他開發出史上第一台二進位的數位計算機,而且所用的就是馮紐曼後來才提出的現代電腦架構。當電腦先驅們只知道用機器語言輸入指令時,他已經發明世上第一個高階語言。他還設計出類似電腦螢幕的機制,即時顯示計算機實際接收到的輸入指令。但世人卻幾乎不認識這位先驅中的先驅——楚澤。
只因楚澤生在德國,又逢二次世界大戰,以至於研究中斷延宕。等到戰後他重啟計算機的開發時,已經遠遠落後,最後不得不黯然退出了……。
本文為系列文章,上一篇請見:手算來不及啦!先驅者並起,數位計算機的萌芽時期│《電腦簡史》數位時代(五)
V1——第一台二進位數位計算機完工,只不過……
1938 年 6 月,楚澤花了將近兩年時間打造的 V1 計算機終於完工。這個龐然大物用了兩萬個零件,重達一千公斤,幾乎佔據了家中整個客廳。
測試的結果一如楚澤的構想,不需繼電器,僅憑金屬條就能完成 22 位元的浮點運算。但成也金屬條、敗也金屬條,因為這一片片完全都是用手工鋸出來的,精密度不是很高,有時會卡住而難以移到正確位置,或者應該分隔卻互相接觸而構成錯誤迴路。
事實上在剛開始建造時,楚澤的朋友舒瑞亞 (Helmut Schreyer) 就對金屬條不以為然,勸他使用真空管。舒瑞亞當時正在攻讀電機博士,楚澤只覺得這是高居象牙塔的痴人說夢,他從來不敢肖想這麼昂貴的零件。但如今 V1 的實際運作情況讓他不得不認真考慮了。
楚澤已經獲得那位企業家的一筆資金,但金額仍不足以讓他任意揮霍。已經拿到博士學位的舒瑞亞再次提出建議,這次至少是個可行的折衷方案:買不起真空管沒關係,那就用電話交換機汰換下來的二手繼電器。(楚澤用廢棄的電影膠卷取代紙條,也是出自他的建議)
打造下一代計算機的實驗機型——V2,不料二次大戰爆發……
楚澤評估如果 V1 全部都改用繼電器,至少需要兩千個以上。保險起見,他決定先將控制單元與運算單元換成繼電器,記憶單元則繼續沿用金屬條,並且將規格降低為 16 位元,放棄浮點運算、限定小數點位數,這樣應該只需要兩百個繼電器,就可以打造一台過渡性質的計算機 V2。一旦證明繼電器電路穩定可靠,再用 V2 去爭取更多資金,打造下一代的計算機。
不料 1939 年 9 月德國閃電入侵波蘭,開啟了第二次世界大戰,也打斷了楚澤的計畫。
楚澤被徵召入伍,分發到步兵單位。入伍沒多久,他就寫信給上級,表示自己開發中的 V2 可用來加密情報文件,盼能讓他發揮計算機的才能,報效國家。不過眼前德軍更迫切需要的是武器,況且他們已經有威力強大的恩尼格瑪密碼機 (Enigma),開發計算機顯然不是首要之務。
德軍更看重的,反而是楚澤之前擔任結構工程師的經驗,於是把他轉派到亨舍爾飛機公司,協助開發戰鬥機。楚澤怎麼也沒想到,繞了一圈,自己竟又回到幾年前辭職的公司上班。不過這至少比上前線打仗好多了。
楚澤利用下班時間繼續打造 V2,最後終於在 1940 年中建造完成。他在當年九月向德國航空研究所展示 V2,這次他以協助空氣動力學的計算為訴求,成功獲得資金挹注。他趁此成立公司,開發完全採用繼電器的數位計算機 V3。
全繼電器的數位計算機 V3 完工,下一步,操作簡便又便宜的V4
V3 僅花了半年時間就完成,總共使用 2,400 個繼電器,和 V1 一樣可以做 22 位元的浮點運算,但速度提升到 5 赫茲,加減法不到 1 秒,乘除法也僅需 4 秒。楚澤於 1941 年 5 月對外公開展示,結果最先收到的訂單就是來自他上班的公司——亨舍爾飛機。
不過楚澤真正想做的不是為客戶客製化計算機,而是大量生產可以直接使用的通用機型。要做到大量生產,首先就得壓低成本。所以楚澤將這個預計量產的機型 V4 設計成像 V2 那樣,只有控制單元與計算單元使用繼電器,記憶單元則使用金屬條。一方面這也是基於現實面的考量,因為戰事造成物資吃緊,繼電器不易取得。
雖然成本壓低,但 V4 的性能反而超越 V3,速度提高到 30 赫茲,容量也更大,可以處理 32 位元的運算。而且記憶單元預存了開根號、三角函數sin、最小、最大等指令集,可以直接呼叫使用。為了讓使用者很快上手,楚澤還為 V4 發明了世上第一個電腦高階語言 Plankalkül(意指「規劃計算」)。
高階語言接近自然語法,使用者很容易就能學會,然後只要在改造的打字機輸入Plankalkül 中的相關指令,打字機便會在膠卷上打孔,轉換成二進位的程式碼。在此同時,有個裝置會將膠卷上的程式碼轉換成 Plankalkül 語言,立即顯示在燈號面板上,讓使用者確認是否與所輸入的一致,好即時更正錯誤。不用等到機器執行完程式後。才費心尋找指令哪裡打錯。
德軍敗退、V4改名,楚澤的命運從此大不同
楚澤於 1942 年開始打造 V4 的原型機,計畫一年到一年半之間完成。不料,美國於 1941 年底因日本偷襲珍珠港而決定參戰。在美軍的支援下,同盟國對柏林展開猛烈的轟炸,楚澤的工作屢屢因空襲而被迫中斷,物資取得也更加困難。V4 就這麼做做停停,進度大受影響,直到 1945 年初才終於打造完成。
只是此時蘇聯的軍隊已逼近柏林,德軍決定把重要的戰略性武器與人員從柏林轉移到其它城市,於是楚澤帶著拆解成二十箱的 V4,跟著一起撤到哥廷根 (Göttingen)。1945 年 4 月,楚澤重新將 V4 組裝完成,但五月德國就宣布投降,他的計算機大業也隨之停擺。
戰後楚澤只能靠畫油畫與刻些木雕賣給美軍與觀光客維生,如此過了兩年多,直到 1948 年,他才租了個地方開封蒙塵已久的 V4,重啟計算機工坊。不過為了避免外界將 V4 與納粹的 V1 、V2火箭聯想在一起,他乾脆將 V4 改名為 Z4 (Z 代表他的姓氏 Zuse),之前的計算機 V1、V2、V3 也就跟著改為 Z1、Z2、Z3。
隔年一位蘇黎世聯邦理工學院 (ETH Zurich) 的教授前來拜訪,當場出一題微分方程式測試 Z4 的能耐。只見楚澤三兩下設定好後, Z4 馬上就解出答案,這位教授立刻以五萬瑞士法郎向楚澤訂購一台。楚澤用這筆錢再度成立公司,繼續開發下一代計算機。1958 年,楚澤終於用真空管打造出全電子式的計算機 Z22,殊不知早在 13 年前,大西洋的另一邊就有人率先開發出來了。
楚澤後來又繼續開發新的機種,但他經營企業的能力遠遠不如設計天分,到了 1964 年,公司終因周轉不靈賣給一家鋼鐵公司,五年後又被轉賣給西門子 (Siemens)。
時不我予——縱有超越時代的創見,最後只能黯然退出
在這場開發數位電腦的競賽中,楚澤從原本獨占鰲頭,到後來黯然退出,絕對不是因為他技不如人。相反地,他的創見始終遠遠領先其他人。
他在馮紐曼提出現代電腦架構之前,就已經如此設計開發計算機;他用鍵盤直接輸入指令時,別的機器都還是靠更換打孔紙帶或電路接線;當其他人腦子裡只有機器語言時,他已經在使用高階語言;而他用燈號面板即時顯示輸入結果,更是相當於現代電腦螢幕的機制。
只能說是時不我予。楚澤縱有超越時代的創見,也不敵造化弄人。
二次大戰促使美國政府全力開發計算機,相反地,納粹政府卻以武器為先,並未支持楚澤的計畫。楚澤在這關鍵的幾年落隊,就再也沒機會迎頭趕上了。而這不僅是他個人的損失,楚澤的成果與創見也因為戰爭而不為外界所知,英美的電腦先驅們因此錯失了從中獲得啟發的機會。
這也令人不禁設想:倘若當初楚澤沒有將 V4 改名為 Z4 呢?戰後美蘇雙方都急忙派遣特殊部隊前往德國搶奪傑出人才,美國的「迴紋針行動」(Project Paperclip) 更是瞄準火箭科學家。如果楚澤將錯就錯,繼續讓人以為 V4 是新的火箭,他會不會被當成火箭科學家帶去美國,然後運用那裏的龐大資源,繼續扮演創新者的角色,加速電腦的演進?
無論如何,歷史無法重演。經過二次大戰,計算機的發展從此就由美國主導了。