分析機——史上第一部通用型計算機終將誕生?│《電腦簡史》 齒輪時代(二十)

巴貝奇已經耗費了十年光陰打造差分機,卻寧可中途放棄,重新打造分析機。分析機有何特別,令巴貝奇如此執意投入?他能如願完成夢想嗎?

本文為系列文章,上一篇請見:織布機的進化戰爭,計算機的關鍵突破│《電腦簡史》 齒輪時代(十九)

查爾斯.巴貝奇 (Charles Babbage),1791 年 12 月 26 日- 1871 年 10 月 18 日。圖/wikipedia

第一個突破:記憶元件與計算元件分離

當巴貝奇於 1834 年 9 月畫下第一張分析機草圖時,其實對打孔卡片還一無所悉。他之所以放棄已經耗費十年光陰的差分機,決定另起爐灶,並非有什麼外來的啟發,而是他在打造差分機的過程中,自己得出的醒悟。

差分機雖然已是計算機的一大躍進,但有一點仍與以往的加法器無異,那就是計算的結果停留在加法器上。這對單一加法器不是問題,但差分機涉及很多階的差分,每個立軸計算出的差分還要傳往上一階的立軸,在銜接上免不了出現互相等待的情況,不是很有效率。如果中間算出的數值可先暫存在一個地方,加法器就可以馬上進行下一個計算,減少閒置等待的時間。

拿當時最發達的紡織業來比喻,紗線從倉庫搬到工廠織成半成品後,會先運回倉庫,下個工廠再自倉庫取出半成品加工。因此巴貝奇認為計算機也應該有個專用的記憶元件,與計算元件各自獨立。他將記憶元件稱為「倉庫」(store),用來存放初始值或各階差分的數值;計算元件稱為「工廠」(mill),存放在倉庫的數值送過來計算後,所得結果再存回倉庫。如此一來運作效率更好,也更有彈性。

記憶元件還可以用來暫存長乘法與長除法過程中的數字,乘除計算便不再是問題,也就是說記憶元件與計算元件分離後,分析機除了可以更快地算出對數表,還能處理各種函數,什麼計算都能做。

不過還有個技術上的難題橫在巴貝奇面前,難以克服,那就是如何讓分析機切換到不同的運算模式?

分析機架構圖 By ArnoldReinhold – Own work, CC BY 4.0

 

第二個突破:利用打孔卡片

巴貝奇原本打算利用差分機裡面一個現成的設計。差分機不是最後還能印出計算結果嗎?其中的控制裝置是一個圓筒狀的鼓輪,表面伸出許多軸桿(你可以想像成葉問練詠春拳的木人樁),這些軸桿與其它機件連動,隨著鼓輪轉動而列印不同數字。它的控制原理與滾筒風琴類似,如果可以用在分析機上,那麼只要更換不同鼓輪,就能讓機器做不同運算。

只不過分析機實在太過複雜,更換鼓輪會牽一髮而動全身,實際上不大可行。巴貝奇苦思兩年仍無良策,最後才終於從雅卡爾織布機獲得靈感。

1836 年 6 月 30 日,巴貝奇在筆記本上寫下:

「假設用雅卡爾的織布機取代鼓輪。」

這是打孔卡片首度用於計算機,分析機終於取得關鍵突破。一如雅卡爾用打孔卡片取代沃康松所設計的大圓筒,才成功打造出全自動織布機,如今巴貝奇決定用打孔卡片取代鼓輪,便無須更動內部機件,可輕易改變分析機的運作方式,使得分析機成為史上第一部可編程的通用型計算機。

這不僅是計算機歷史上一個重要里程碑,所造成的影響也極為深遠。自此之後,各式計算機開始用打孔卡片來輸入程式或資料,即使到了已經改用電晶體的大型電腦也是如此,直到 1980 年代鍵盤普及後,打孔卡片才功成身退。

用於分析機的打孔卡片 By Karoly Lorentey  – originally posted to Flickr as Punched cards for programming the Analytical Engine, 1834-71, CC BY 2.0

But,通用型計算機有什麼用?

不過通用型計算機要用來幹嘛?巴貝奇身處的時代還沒有這樣的需求,當然也就看不出分析機的重要性。因此英國政府對於他 1834 年底提出的建議毫無興趣。對英國政府而言,撥款給巴貝奇打造差分機,是著眼於他所許諾的:編製出正確無誤的對數表、三角函數表,乃至天文、航海等數值表。如今這些數值表仍未見蹤影,他卻夸夸而談什麼通用型計算機,豈非捨本逐末。更何況,差分機已經耗費鉅資,重新打造更為複雜的分析機,豈不是又成了一個大錢坑?

(前情提要:兩艘軍艦換不到兩噸重的計算機?巴貝奇與差分機│《電腦簡史》 齒輪時代(十八))

英國政府當然不會同意分析機的提案,而且眼見巴貝奇偏離初衷,乾脆中止差分機的經費,認賠止血。但巴貝奇並未死心,他仍繼續埋頭設計分析機,縱然經費尚無著落,即使沒人了解,他也要完成理想中的計算機。

巴貝奇並不孤獨,至少還有個知音完全認同分析機的價值,而成為巴貝奇的追隨者。她就是有「史上第一位程式設計師」之稱的愛達·勒芙雷斯 (Ada Lovelace)。

關於作者

張瑞棋

1987年清華大學工業工程系畢業,1992年取得美國西北大學工業工程碩士。自小喜愛科學新知,浮沉科技業近二十載後,退休賦閒在家,更成為重度閱讀者。當了中年大叔才成為泛科學專欄作者,著有《科學史上的今天》一書,如今又因翻譯《解事者》,而多了個譯者的身分。

網站更新隱私權聲明
本網站使用 cookie 及其他相關技術分析以確保使用者獲得最佳體驗,通過我們的網站,您確認並同意本網站的隱私權政策更新,了解最新隱私權政策