天天看點

一文讀懂《三體》中的人列計算機

看過《三體》的朋友們,一定還記得那個架空名場面——馮·諾依曼讓秦始皇安排三千萬個士兵組成的人列電腦。通過士兵舉黑白旗顯現的信号代替了二進制進行運算。

一文讀懂《三體》中的人列計算機

圖檔來自《三體》電視劇截圖

别緊張!不用你現在就了解與、或、非門的邏輯門電路。我們往大了看看計算機的硬體系統基本結構。

一文讀懂《三體》中的人列計算機

拿一台現代電腦的各個硬體部分來具象,就能很好的做一個對應。

輸入裝置,譬如滑鼠、鍵盤等;

控制器和運算器,往往合稱為中央處理單元,即 CPU(Central Processing Unit)等;

存儲器,顧名思義,是我們常說的記憶體條和硬碟等;

輸出裝置,顯示器、列印機、音響等。

這一套硬體組成系統被稱為馮·諾依曼體系,由這位數學家冠名創立。但并非他憑空想象而成,而是總結前人經驗所得。因為,在電子電腦普及之前,還經曆了手動電腦和機械電腦的時代。馮·諾依曼也沿襲着「路徑依賴」這一創造規則,簡稱踩着巨人的肩膀前行。接下來,咱們就一探究竟。

朋友,請舉例一款電腦,要是你腦子裡立刻想到的!

我想,大多數人腦中浮現的都會是下圖這種長相的電子電腦,帶電的,能自動計算。隻需要用按鍵輸入資料和運算法則,結果會自動輸出到一塊電子屏上。常見到不起眼……

一文讀懂《三體》中的人列計算機

圖庫版權圖檔,不授權轉載

如果你湊巧最近還看了點古裝劇,腦中應該還會想到噼裡啪啦打得精妙的算盤。使用算盤進行計算,全由人手在扒拉算珠操作,計算過程靠的也還是我們人腦在記背的珠算口訣,而算珠排布的變化展示的則是其中的寄存結果。這一類屬于手動電腦,可做不到自動計算。

一文讀懂《三體》中的人列計算機

圖庫版權圖檔,不授權轉載

不賣關子了。這篇文章,我們就聊聊介于這兩者之間的機械電腦。

01

機械電腦的現代身影

第一次工業革命的代表是用機器取代人力、畜力,人類進入機器時代。第二次工業革命的代表是電力的大規模應用,我們進入了電力時代。現在我們處在第三次工業革命,各類資訊技術和科技創新帶來的現代便利中,更直白點,我們處于一種隻一眼是看不懂事物原理的時代。

而電腦的發展也跟着上面的時代潮流在發展,經曆了三個階段,從手動電腦到電子電腦,這中間還經曆過機械電腦的階段。隻是這個階段已經被「日新月異」掉了,甚至讓人覺得好像從未展現在我們面前?畢竟,四十歲以下的朋友們出生時,周圍身邊物品全帶電了…我說的是電力。

然而,實際上我們所有人的身邊,都還有機械計算機殘留的熟悉身影。不信就來看看?

02

後期的機械電腦

我們先來看一款在機械電腦時期比較後期的機器 Divisumma 24,它能以每分鐘 250 次循環的速度依次快速加、減、乘、除運算。這台由 Marcello Nizzoli 設計的機器于 1963 年 9 月開始在意大利被 Olivetti 公司大批量生産制造。選它介紹的原因,是這台機械電腦在上個世紀七十年代的市場上足夠成功——共生産了約 600 萬台,也是該公司在全世界銷量最多的機械電腦型号。

正因為是機械電腦時期比較後期的産品,這台機械電腦并非是完全的純機械設計,需要外接一個下圖最右側的 70 瓦蝸杆電機作為動力源進行驅動。整機内部沒有電路闆,也沒有傳感器,沒有任何什麼高科技到令人看不懂的現代元器件。有的隻是齒輪、彈簧、連動杆等共約 3800 個機械零部件在互相配合着完成工作。這也說明,在它閃亮登場的時代,這樣的機械工藝水準已然登峰造極。

一文讀懂《三體》中的人列計算機

圖檔來自 Multyplus1

操作時,我們隻需要輸入要做計算的數字,然後計算的不同階段和輸出結果,都會分成兩種不用顔色的墨水被列印到機器上方的一卷紙帶上。下圖我們可以通過觀察機器的計算時間,感覺到這台機械電腦在不同運算法則下的計算速度。比如 12 加 45,這個 57 的計算結果幾乎是立刻就被輸出到紙帶上。而 45 乘 78 的運算結果 3510 卻需要停頓一陣。

以下視訊是 1962 年 Divisumma 24的組裝視訊,攝錄後用來給工廠的組裝人員教育訓練使用。3800 個零部件的組裝,即便是二十一世紀的現代人,也不能毫無痛苦地看懂……忍不住要發出「什麼樣的頭腦,能設計出這種東西」的感慨。

視訊來源:https://www.youtube.com/watch?v=5BkQ-hfcLEg

03

相似的打字機

看到這裡,仔細觀察的你有沒有發現這台機械電腦,似乎和打字機有一些相像?一樣的按鍵下壓作為輸入,一樣的紙帶打字輸出結果。說出你的大膽推測?對,它們在設計上确實一脈相承!工程師 Camillo Olivetti 在 1908 年初創以姓氏命名的公司 Olivetti 時,最初生産的就是打字機。

我們不妨來看看這同一家公司在 1950s 生産的 Olivetti Lettera 22 打字機,作為那個年代最具标志性的打字機之一,還在 1959 年被美國伊利諾伊理工學院選為過去 100 年最佳設計産品。而這款打字機也由 Divisumma 24 機械電腦的設計師 Marcello Nizzoli 進行設計,如果你有機會去紐約的 MoMA,也就是現代藝術博物館(Museum of Modern Art),還能看到這款永久收藏品。

一文讀懂《三體》中的人列計算機

圖檔來自 YEGTypewriters

04

設計趨同

如此相似的設計,就要說到設計方法上的一種現象——設計趨同。有時為了減少使用者的認知成本,能快速的适應一種新産品,商業設計的一些功能和布局會呈現趨同化。除此之外,這也減輕了設計師的創新壓力,對于工廠的大批量生産來說也減輕了開模和勞工組裝的負擔。可以說是設計史上的前人栽樹,後人乘涼。

也正是因為設計趨同,即便是被科技飛速發展逐漸淘汰的奇思妙想,已然分不清究竟是誰模仿了誰,但總還能發掘出曾經的技術遺迹。現今,上圖這類機械打字機已經很少有人在使用了,但我正敲擊着的鍵盤和顯示器上呈現的文字,不正以電子計算機這一另外的形式,延續着它曾經存留世間的痕迹嗎?

05

早期的機械電腦

我們看過了後期的機械電腦,被它的精妙結構所震撼,趕緊來看一款早期的機械電腦平複一下心情。時間往前倒推 300 餘年,一款 1642 年由布萊茲·帕斯卡發明的滾輪式加法器,也被稱為帕斯卡電腦。這款機械電腦,可以直接對兩個數字進行加減運算。

那一年,發明者年僅 19 歲,初衷隻是為了減輕作為稅務官的父親的工作量。帕斯卡這個名字是不是有些耳熟?我們在國中科學課上學過的壓強機關帕斯卡(Pa),也是因為他的傑出貢獻而以他的名字命名。這是一位科學史上傑出的數學家、實體學家、化學家、氣象學家……

來看下圖的實操,正在撥動下方的轉盤依次輸入兩個數字,要進行加法或減法運算。

一文讀懂《三體》中的人列計算機

圖檔來自 Yves Serra

簡單的看一個單獨的轉盤内聯結機構的内部原理。

一文讀懂《三體》中的人列計算機

圖檔來自 Colegiul Economic Ion Ghica

不同轉盤間的關聯,則是當一個轉盤的數值達到 10,也就是說轉了一圈後,這個齒就會驅動第二個齒輪,完成升位。

06

做加法的水表

這個升位的小機械結構,你應該會非常熟悉。水表,其實就是一種二十一世紀還在使用的機械加法電腦,隻是現在自動計算的是你家的用水量。

我們來看一個速度式水表拆解後的下層,找的圖源自流體力學的模拟資料。所謂的速度式水表,就是機械結構通過水流速度的快慢推算你的用水量多少。能看到一個個模拟水流的小球是先經過了濾網,再推動腔體中的葉輪旋轉。

一文讀懂《三體》中的人列計算機

圖檔來自 Tintschl BESt AG (english)

而葉輪上同軸接的齒輪,會延伸進水表的上層。這裡面是一成套的減速齒輪組。由它們再驅動讀書盤,步進着去顯示做加法。一樣是後一個轉盤的轉一圈,完成一次進位。可以說齒輪成了這類機械裝置的心髒。

一文讀懂《三體》中的人列計算機

圖檔來自 Tech & Lifestyle

簡單的了解機械電腦階段的頭尾兩款機器。我們就會發現這類機器發展的最大限制,已經是材料本身,機械零部件本身的品質讓組裝和設計變得異常複雜。但也正是因為機械結構的複雜性,賦予了機械電腦極高的欣賞價值,這或許也是人們迷戀「蒸汽朋克」這一科幻題材的原因所在。好在,我們的生活會一直建立在過去的智慧之上,隻是換了一種表達形式。

參考文獻:

[1]http://www.marcello-nizzoli.com/

[2]https://americanhistory.si.edu/collections/search/object/nmah_690100

[3]書籍《01改變世界》和《運籌·機巧:機械計算機發明史》

作者|張金妙 倫敦大學金匠學院實踐設計碩士

稽核|王揚宗 中國科學院大學人文學院教授

繼續閱讀