程式自動消失問題

 

有不少朋友在Casio fx-3650P 或 fx-3950P輸入程式後,發現程式無故自動消失,造成不便及困擾。其實程式自動消失的原因一般來說有兩方面,其一是硬件方面的問題,另一個可能的原因為程式缺陷。

硬件方面的問題當然有可能是有部份計數機品質較欠理想之故,若果是這個原因,通常只會發生在個別的計數機中。另一個常見原因為電路中有短路,當然用家亦有責任小心使用計數機,否則亦會較易出現問題。

程式缺陷當然是設計上出現錯誤,當執行有問題的程式,計數就會出現各種不同的問題,而這類問題會普遍存在產品上(最少存在同一個版本的fx-3650P),亦即是並非個別計數機的問題。

如何才可以知到自己的CASIO fx-3650P / fx-3950P有沒有程式缺陷,方法很簡單,只要編寫簡單的程式,並測試會否出現程式消失現象即可:

測試程式在COMP 模式之下,注意:以下的 M+是一個按鍵不是M及+兩個按鍵

程式為  1 M+ : log 0

測試的步驟如下:

1. 執行上述程式,程式會出現 Math ERROR;

2. 再按 AC  取消錯誤;

3. 再按 2  EXE ,這時計數機第一行會顯示 2◢,第二行則顯示2;

4. 再按 REPLAY 向上鍵,此時計數機第一行沒有任何顯示(包括沒有浮標),第二行則顯示 0

5. 再按 ON ,此時程式消失,再執行程式沒有任何反應,或按MODE MODE MODE 1 進入程式編輯模式顯示有 360 bytes程式空間。

若果測試的結果是程式消失,那麼可以確定那部fx-3650P計數機有程式自動消失的問題,亦可以肯定最少有一個程式缺陷存在,經過進一步測試,顯示有這個問題 的計數機,消失現象可以在現存不少的程式中出現,因此程式自動消失絶非個別計數機的問題,當然最後會否出現消失的問題,還要滿足一些條件,但可以肯定有一定機會率會出現。

最初知到這個方法時,很多人認為是因為按 ON 時計數機有自我檢測,當發現有異常時會將儲存在記憶中的資料清除(說明書中Ch-46)。不過現在發現還有其它方法,即使在沒有按ON 鍵的情況下,一樣可以出現程式消失的現象,而且出現的條件比上述的方法更複雜,與數值記憶中的數值及執行程式前 ,曾經執行的算式有關,相信要找出消失的確實條件有一定困難,現在只有希望Casio方面能主動將問題修正,這個問題才有機會完全解決。現在使用程式的朋友,要有心理準備,程式有隨時消失的風險存在

 


有網友就這個問題向Casio查詢,Casio 回覆建議,當執行程式時出現錯誤時(ERROR),使用錯誤指示器(Error locator)搜尋錯誤,避免直接按其它鍵,這樣可防止計算機內部執行重設功能(Reset all),所以可以防止程式消失問題的出現,不過經測試發現,這個方法並沒有太大的效用。

測試程式為 1 M+ : log 0

1. 執行上述程式,程式會出現 Math ERROR;

2. 使用錯誤指示器按 REPLAY向右鍵,再按 MODE MODE MODE 2離開程式編輯模式;

3. 再按 2  EXE ,這時計數機第一行會顯示 2◢,第二行則顯示2;

4. 再按 REPLAY 向上鍵,此時計數機第一行沒有任何顯示(包括沒有浮標),第二行則顯示 0

5. 再按 ON ,此時程式消失,再執行程式沒有任何反應,或按MODE MODE MODE 1 進入程式編輯模式顯示有 360 bytes程式空間。

有趣的是,步驟2無論是按 AC 取消錯誤,還是使用錯誤指示器(Error locator),在執行步驟3之前,只要完全執行另一個無錯誤的程式至終結,即使程式只有1 byte,例如: 程式碼為數字0,亦可將消失的問題清除,但可以肯定,與使錯誤指示器(Error locator)無太大關係。

 

其實出現程式自動消失的必要條件並非一定是計算機出現錯誤(ERROR),以下的兩個測試的例子就是計算機沒有出現錯誤(ERROR),但依然出現程式自動消失的問題,所以即使用錯誤指示器亦無法解決問題,那麼應如何解決問題呢,經過一些測式及研究,大家可參考應付程式自動消失方法

 

沒有出現錯誤(ERROR)但出現程式自動消失的測試:

測試程式一為  Lbl 0: 1M-: Goto 0

1. 執行上述程式,程式會不斷執行;

2. 再按 AC  終止程式執行;

3. 再按 2  EXE ,這時計數機第一行會顯示 2◢,第二行則顯示2;

4. 再按 REPLAY 向上鍵,此時計數機第一行沒有任何顯示(包括沒有浮標),第二行則顯示 0

5. 再按 ON ,此時程式消失,再執行程式沒有任何反應,或按MODE MODE MODE 1 進入程式編輯模式顯示有 360 bytes程式空間。

 

測試程式二為  1%: ?→A

1. 執行上述程式,程式會顯示A?;

2. 不輸入數值,直接按 AC  終止程式;

3. 再按 2  EXE ,這時計數機第一行會顯示 2◢,第二行則顯示2;

4. 再按 REPLAY 向上鍵,此時計數機第一行沒有任何顯示(包括沒有浮標),第二行則顯示 0

5. 再按 ON ,此時程式消失,再執行程式沒有任何反應,或按MODE MODE MODE 1 進入程式編輯模式顯示有 360 bytes程式空間。

 

在測試中發現一些有趣規則,就是步驟3中,不一定要按 2 EXE,只要是 2字開頭的數值都可以,例如: 234567 EXE,而且還可以是算式的運算,例如 12 + 12 EXE ,只要最終答案是2字開頭即可,不同之處是步驟4有可能會出現一些亂碼,但最終程式消失的結果相同。


日期: 2010年11月1日

有網友發現即使沒有按ON的情況下,亦可以觸發程式自動消失問題例子,以下網址是網友的發現及一些討論:

http://webcal.forumcircle.com/viewtopic.php?t=2691

 

其實要測試亦很簡單,可以使用上面任何一個會出現程式自動消失的例子,只要將最後一步由按ON改為執行運算時較長時間的程式或者是一般計算(例如計算sin30+cos30+tan30),只要計算機在運算過程中而又未顯示結果前(即是計算機依然顯示為空白的時候),按 AC 強行終止運算,這時就會出現程式自動消失(當然這裡不按AC改為按ON效果亦相同)。

 

這個測試顯示強行終止計算機運算(無論是按ON或AC)與程式消失亦有關係

 

各位網友若對上述升級方法有任何疑問、意見或新發現,歡迎到WebCal論壇留言討論。

 

應付程式自動消失方法

返回 fx-3650P 程式集

Free Web Hosting