簡介
三進制計算機,是以三進法數字系統為基礎而發展的計算機。
三進制邏輯相比較現今的計算機使用二進制數字系統更接近人類大腦的思維方式:二進制計算規則非常簡單但並不能完全表達人類想法。在一般情況下,命題不一定為真或假,還可能為未知。在三進制邏輯學中,符號1代表真;符號-1代表假;符號0代表未知。這種邏輯表達方式更符合計算機在人工智慧方面的發展趨勢。它為計算機的模糊運算和自主學習提供了可能,但目前電子工程師對這種非二進制的研究大都停留在表面或形式上,沒有真正深入到實際套用中去。
三進制代碼的一個特點是對稱,即相反數的一致性,因此它就和二進制代碼不同,不存在無符號數的概念。這樣,三進制計算機的架構也要簡單、穩定、經濟得多。其指令系統也更便於閱讀,而且非常高效。
隨著技術的進步,真空管和電晶體等計算機元器件被速度更快、可靠性更好的鐵氧體磁芯和半導體二極體取代。這些電子元器件組成了一個很好的可控電流變壓器,這為三進制邏輯電路的實現提供了可能,因為電壓存在著三種狀態:正電壓(1)、零電壓(0)和負電壓(-1)。三進制邏輯電路非但比二進制邏輯電路速度更快、可靠性更高,而且需要的設備和電能也更少。這些原因促成了三進制計算機Сетунь的誕生。
問世
Сетунь
莫斯科國立大學研究員設計了第一批三進制計算機Сетунь和Сетунь70。Сетунь是一台帶有快速乘法器的時序計算機。小型的鐵氧體隨機存儲器(容量為3頁,即54字)充當快取,在主磁鼓存儲器中交換頁面。這台計算機支持24條指令,其中3條為預留指令,目前不用。Сетунь 70是一台雙堆疊計算機。其回叫堆疊用來調用子程式。這一簡單的改進啟發了荷蘭計算機科學家艾茲格·W·迪科斯徹,為他日後提出結構化程式設計思想打下了基礎。設計計畫由科學院院士С·Л·Соболев在1956年發起。該計畫旨在為大專院校、科研院所、設計單位和生產車間提供一種價廉物美的計算機。為此,С·Л·Соболев在莫大計算機中心成立了一個最初由4名副博士、5名學士組成研究小組。С·Л·Соболев、К·А·Семендяев、М·Р·Шура- Бура和И·С·Березин是這個小組的永久成員。在該小組開發和研製下,Сетунь的樣機於1958年12月準備完畢。在頭兩年測試期,Сетунь幾乎不需要任何調試就運行得非常順利,它甚至能執行一些現有的程式。1960年,Сетунь開始公共測試。
1960年4月,Сетунь就順利地通過了公測。它在不同的室溫下都表現出驚人的可靠性和穩定性。它的生產和維護也比同期其它計算機要容易得多,而且套用面廣,因此Сетунь被建議投入批量生產。
可是,蘇聯官僚對這個經濟計畫外的科幻產物持否定的態度且勒令其停產。而此時,對Сетунь的訂單卻如雪片般從各方飛來,但10到15台的年產量遠不足以應付市場需求。很快,計畫合作生產Сетунь的工廠倒閉了。1965年,Сетунь停產了。取而代之的是一種二進制計算機,但價格卻貴出2.5倍。
Сетунь70
總共生產了50台(包括樣機)。從加里寧格勒到雅庫茨克,從阿什哈巴德到新西伯利亞,全蘇都能看到Сетунь的身影。各地都對Сетунь的反應不錯,認為它編程簡單(不需要使用彙編語言),適用於工程計算、工業控制、計算機教學等各個領域Сетунь 70有了Сетунь的成功經驗,研究員們決定不放棄三進制計算機的計畫。他們在1970年推出了Сетунь 70型計算機。Сетунь 70對三進制的特性和概念有了進一步的完善和理解:建立了三進制位元組——tryte(對應於二進制的byte),每個三進制位元組由6個三進制位(trit,約等於9.5個二進制位bit)構成;指令集符合三進制邏輯;算術指令允許更多的運算元長——1、2和3位元組(三進制),結果長度也擴展到6位元組(三進制)。對Сетунь 70而言,傳統計算機的字的概念已經失去意義了。編程的過程就是對三進制運算和三進制地址的操作。這些基於三進制位元組的命令將會通過對虛擬指令的編譯而得到。
Сетунь 70成了莫斯科國立大學三進制計算機的絕唱。由於得不到上級的支持,這個科研項目不得不無限期停頓下來。
換算表
所謂三進制,簡單的說就是“逢三進一,退一還三”的進制。三進制數碼包括“0,1和2。”
三進制數位小數點前從右往左依次是1 位,3位,9位,27位,81位,243位……
三進制數位小數點後從左往右依次是3分位,9分位,27分位,81分位……
寫時注 意應打括弧,加下標的3,如(1201)3。讀作一二零一,不能讀成一千二百零一,這是因為它們對應於27位,9位,3位和1位,不是千百十個位!
一些常見的十進制數換三進制表
十機制 | 三進制 |
0 | 0 |
1 | 1 |
2 | 2 |
3 | 10 |
4 | 11 |
5 | 12 |
6 | 20 |
7 | 21 |
8 | 22 |
9 | 100 |
10 | 101 |
... | ... |