Free42 HP-42S科學(xué)計算器是HP-42S科學(xué)可編程計算器和HP-82240打印機的重新實現(xiàn)。 這是一個完整的重寫,不使用任何HP代碼。它不需要HP-42S ROM映像。 Free42是一個開源項目。可執(zhí)行文件和源代碼是根據(jù)GNU通用公共許可證版本2發(fā)行的。 Free42中使用的所有第三方代碼都是在公共領(lǐng)域,或者是與GPLv2兼容的條款許可的,或者在得到作者許可的情況下使用。有需要的小伙伴歡迎來西西下載。
使用說明:
當(dāng)你下載解壓這個計算器軟件后,你會看到【Free42Binary.exe】、【Free42Decimal.exe】這2個程序,前者是二進制計算器,后者是十進制計算器,通常我們只需要運行和使用后者即可。
如果運行時跳出這個錯誤窗口:"This application has failed to start because the application configuration was incorrect. Reinstalling the application may fix this problem,",只需要安裝vc++ 2008運行庫即可。
Free42這個計算器軟件還帶有皮膚功能,如果你對默認自帶的2種皮膚不滿意,或者對自帶的計算器樣式結(jié)構(gòu)不滿意,那么在官網(wǎng)頁面上還可以下載到更多皮膚,相信這些皮膚中總有和你常用的實物計算器是類似的。
當(dāng)然,使用之前可能你還需要了解或者回憶一下科學(xué)計算器和普通計算器之間的差別,否則計算的結(jié)果可能和你想要的有偏差,甚至可能不會使用。
除了常見的加減乘除操作之外,如果你想要計算平方、次方、開根號、π、sin、cos、tan、幾分之一,F(xiàn)ree42都可以幫你實現(xiàn)。
與其說Free42增強了windows自帶計算器的功能,還不如說Free42是windows自帶計算器的替代品。
因為當(dāng)你在電腦上想要使用計算器的時候,很有可能找不到自帶計算器在哪邊,尤其是windows 10系統(tǒng)上,甚至還可能為了這個去搜索引擎上尋找結(jié)果。
由于搜索引擎本身就帶有計算器的功能,所以尋找這個問題的答案實在是有些多此一舉,甚至你會發(fā)現(xiàn)為了一個計算器去大費周章尋找它在哪邊,還不如直接拿起手機使用手機上的計算器來的快一點。
不過有了Free42之后就沒有這個煩惱了,最多只需要在重裝系統(tǒng)后創(chuàng)建一個桌面快捷方式即可,畢竟這個軟件存放在哪個文件夾中相信你肯定是知道的。
常見問題答疑:
為什么我的HP-42S程序無法在Free42中正常工作?
HP-42S程序在Free42中可能無法正常運行的原因有多種。首先要想弄清楚最明顯的地方:請確保檢查是否正確輸入了程序,以及相關(guān)設(shè)置(例如寄存器大小,角度和顯示模式等)是否正確。
排除人為錯誤后,HP-42S程序在Free42中可能無法正常運行的原因是:
不同的浮點格式
HP-42S代表帶有12位十進制尾數(shù)的數(shù)字,指數(shù)從10 -499到10499;Free42 Decimal使用34位十進制尾數(shù),并且指數(shù)從10 −6143到10 6144 ; Free42 Binary使用本機二進制浮點數(shù),在所有當(dāng)前支持的平臺上,IEEE-754是雙精度的,具有53位二進制尾數(shù),大約等于16個十進制數(shù)字,指數(shù)為10 -308 到10 308。
這些差異可能導(dǎo)致Free42與HP-42S計算出不同的結(jié)果。例如,由于尾數(shù)較寬,1 ENTER 3 1 / x-LASTX-LASTX-在HP-42S上返回1e-12,而在Free42小數(shù)上返回1e-34。1 ENTER .2-.2-.2-.2-.2-在HP-42S上返回0,但在Free42 Binary上返回5.55111512313e-17,因為0.2是二進制中的重復(fù)分數(shù)。
使用Free42 Decimal可以避免大多數(shù)此類兼容性問題,但是,盡管它們很少見,但有些程序甚至在Free42 Decimal中也無法正常工作。通常,這些程序特別依賴于尾數(shù)的大小和/或指數(shù)的范圍,但是Free42 Decimal的額外精度也可能會拋棄簡單的數(shù)值算法,例如,如果它們使用的終止條件不是強大的。
Free42默認取決于區(qū)域設(shè)置為小數(shù)點或小數(shù)逗號模式
如果您的計算機/智能手機/平板電腦設(shè)置為小數(shù)點為逗號的語言環(huán)境,則硬重置時Free42設(shè)置為RDX(基數(shù)逗號)模式;在所有其他語言環(huán)境中,將其設(shè)置為RDX。(小數(shù)點)模式進行硬重置。如果在程序的輸出中看到格式錯誤的數(shù)據(jù),則可能必須切換到RDX。模式(在MODES菜單中為RDX。或SF 28)。
在程序中,數(shù)字被標準化
這實際上不是Free42和HP-42S之間的差異,它導(dǎo)致HP-42S程序在Free42中失敗,但是這可能會引起混亂。這是怎么回事?
在程序中,HP-42S基本上在您輸入數(shù)字時就將其存儲。如果要在程序中輸入數(shù)字1000,可以輸入1000或1E3。后者節(jié)省一個字節(jié),但除此之外,沒有區(qū)別。
另一方面,F(xiàn)ree42將數(shù)字以浮點格式存儲在程序中,這意味著不會保留1000和1E3之間的區(qū)別。當(dāng)它顯示包含數(shù)字的程序行時,它將以HP-42S上最緊湊的方式格式化數(shù)字,因此,如果輸入1000,則顯示為1E3,但是如果輸入10,則顯示為10。(當(dāng)科學(xué)點和定點表示的長度相同時,它選擇后者,因此100顯示為100,而不是1E2。)
同樣,這些都不會對Free42的計算方式產(chǎn)生任何影響。我在這里提到這一點是因為,盡管Free42可能看起來與HP-42S有所不同,但這是您應(yīng)該忽略的區(qū)別。
Android和iOS版本是否有菜單?
Android和iOS版本的確有一個菜單,您需要選擇菜單,更改“首選項”中的設(shè)置等。要激活此菜單,請在屏幕上狀態(tài)欄下方的任何位置(或屏幕頂部,如果有)是沒有狀態(tài)欄),直到顯示屏的上半部分。
為什么“觸覺反饋”在我的iPhone / iPad / iPod touch上不起作用?
觸覺反饋所需的硬件和操作系統(tǒng)支持目前僅在iPhone 7及更高版本上可用。較舊的iPhone機型沒有,iPad和iPod touch機型也沒有。
不幸的是,iOS無法為應(yīng)用程序提供一種方法來檢測其運行的設(shè)備是否具有觸覺反饋支持,因此,為了確保該選項在所有支持該功能的設(shè)備上均可用,我別無選擇,只能將觸覺反饋開關(guān)放在所有設(shè)備的“首選項”屏幕中。
如果Apple曾經(jīng)增加一種檢測觸覺反饋支持的方法,我將更改“首選項”屏幕,以便在無用的設(shè)備上隱藏或禁用觸覺反饋開關(guān),但在此之前,當(dāng)前的混亂狀況將繼續(xù)。我很抱歉!
為什么OFF在iOS版本中不起作用?
Apple的iOS用戶界面指南規(guī)定,應(yīng)用程序不應(yīng)具有退出應(yīng)用程序的命令;退出僅應(yīng)在操作系統(tǒng)的請求下進行,而這僅在用戶按下主頁按鈕或使用任務(wù)切換器時發(fā)生。因此,導(dǎo)致應(yīng)用程序退出的Free42 OFF命令違反了這些準則。
最長的時間里,Apple似乎并不介意,但是當(dāng)我提交1.4.75a時,由于這個問題,它被拒絕了。我別無選擇,只能遵從該命令,因此現(xiàn)在,“關(guān)閉”只是發(fā)出嗶聲,而在程序中“關(guān)閉”會導(dǎo)致程序停止。
對于喜歡和使用原始OFF功能的人,我添加了后門以重新啟用該行為。跟著這些步驟:
進入ALPHA模式:移 ENTER
使用ALPHA菜單類型YESOFF:XEQ √x Σ+ LN LN 1 / X LOG 1 / X 1 / X Σ+ 1 / X Σ+
存儲使用ASTO ST X的X寄存器的文字:STO 。 √x
執(zhí)行OFF:Shift EXIT
在X寄存器中使用字符串YESOFF時,OFF再次起作用。您只需要執(zhí)行一次。以這種方式執(zhí)行OFF會設(shè)置一個隱藏標志,告訴Free42從那時起始終執(zhí)行老式的OFF行為,而不管X寄存器的內(nèi)容如何。
如果您卸載并重新安裝了Free42,則必須重復(fù)該過程。獲取更新時,您不必重復(fù)此過程。
為什么Free42沒有顯示在我iPad上的App Store中?
您必須在左上角的選擇器中選擇“僅iPhone”。
是的,這是極具誤導(dǎo)性的,因為Free42不是“僅iPhone”,至少在某種意義上說它只能在iPhone上運行。Apple所說的“僅iPhone”是指并非旨在利用iPad較大屏幕的應(yīng)用程序。從這個意義上說,F(xiàn)ree42是“僅限iPhone”:它可在iPad上運行,但其行為與在iPhone上相同。
為什么我得到的結(jié)果四舍五入為整數(shù)?
您正在以FIX 04模式執(zhí)行7 ENTER 2÷,結(jié)果為3.0000,而它當(dāng)然應(yīng)該是3.5000。
發(fā)生這種情況時,是因為計算器處于BASE模式。您可以通過按住任意算術(shù)或+/-鍵來驗證這一點:在BASE模式下,它們分別執(zhí)行BASE÷,BASE×,BASE-,BASE +和BASE +/-,并且這些命令將其參數(shù)解釋為36位帶符號的二進制整數(shù),并在相同約束內(nèi)返回結(jié)果。
要恢復(fù)正常行為,請按EXIT退出BASE應(yīng)用程序,直到顯示屏上沒有顯示菜單。
嘗試訪問任何編號的存儲寄存器或嘗試使用任何統(tǒng)計功能時,為什么會出現(xiàn)“大小錯誤”?
通常,“大小錯誤”表示您試圖訪問一個不存在的編號寄存器,即,“模式”菜單中的“大小”設(shè)置太低。默認情況下,設(shè)置為SIZE 0025,這意味著您擁有的寄存器編號為00到24。
但是,即使RCL 00返回大小錯誤,通常也意味著REGS矩陣被無意中刪除了。這也會導(dǎo)致所有統(tǒng)計功能失敗,因為它們都使用編號的寄存器來訪問求和數(shù)據(jù)。
要解決此問題,并將REGS恢復(fù)為默認大小,請說SIZE 0025:Shift +/− ▼ Σ+ 0 0 2 5。
如何為自定義菜單分配SST↓(進入)?
Free42 2.1中引入的SST↓也稱為Step Into,它不是一個新功能;相反,它是現(xiàn)有SST功能的新拼寫。由于功能僅在FCN目錄中按其主要拼寫列出,這就引出了一個問題,即如何使用箭頭將SST↓分配給CUSTOM菜單。
答案是拼出來使用ALPHA菜單:Shift鍵 1 ENTER LN 1 / X LN 1 / X LN √x ▼ 1 / X √x ENTER Σ+
(用您要為其分配SST↓的CUSTOM菜單中的任意鍵替換Σ+。)
為什么在打印輸出中什么都沒有顯示?
與HP-42S一樣,F(xiàn)ree42默認情況下處于“打印機關(guān)閉”模式。要啟用打印,請在打印菜單中的功能PRON:Shift鍵 - 清單▲ Σ +。
更新日志:
2019-10-11:版本2.5.10
R <> R中的索引范圍檢查是錯誤的,從而允許行索引等于
行數(shù)加上要使用的行數(shù),這反過來會導(dǎo)致內(nèi)存不足
腐敗。固定。
Android版本:重命名當(dāng)前活動狀態(tài)時,狀態(tài)名稱為
沒有在shell設(shè)置中更新,結(jié)果是退出時狀態(tài)為
仍會以舊名稱保存,在下次啟動時,
以舊名稱加載。所有這些的最終結(jié)果是
最終以重命名狀態(tài),您最終將獲得一個副本。