這是一個不太為人們熟知,卻在計算機史上不能忽視的名字:查爾斯·巴貝奇。他被稱為“計算機之父”,雖然他窮極一生也未能制造出他描述的機器,但是他那超前了一個世紀(jì)的設(shè)想,卻是現(xiàn)代計算機理論設(shè)計的雛形。
現(xiàn)今出版的許多計算機書籍扉頁里,都登載著巴貝奇的照片:寬闊的額,狹長的嘴,銳利的目光顯得有些憤世嫉俗,堅定但絕非缺乏幽默的外貌,給人以一種極富深邃思想的學(xué)者形象。
查爾斯·巴貝奇,出生于英格蘭西南部的托特納斯,父親是一位富有的銀行家。童年時代的巴貝奇顯示出極高的數(shù)學(xué)天賦,考入劍橋大學(xué)后,他掌握的數(shù)學(xué)知識甚至超過了教師。
畢業(yè)留校,24歲的巴貝奇榮幸地受聘擔(dān)任劍橋“路卡辛講座”的數(shù)學(xué)教授——這是一個很少有人能夠獲得的殊榮。假若巴貝奇繼續(xù)在數(shù)學(xué)理論領(lǐng)域耕耘,本可以走上鮮花鋪就的坦途。然而,這位曠世奇才卻選擇了一條無人敢于攀登的崎嶇險路。
用一臺機器“拯救宇宙”
18世紀(jì)末,法國發(fā)起了一項宏大的計算工程──人工編制《數(shù)學(xué)用表》,這在沒有先進(jìn)計算工具的當(dāng)時,可是件極其艱巨的工作。法國數(shù)學(xué)界調(diào)集大批精兵強將,組成了人工手算的流水線,算得天昏地暗,才完成了17卷大部頭書稿。即便如此,計算出的數(shù)學(xué)用表仍然存在大量錯誤。
有一天,巴貝奇與著名的天文學(xué)家赫舍爾湊在一起,對兩大部頭的天文數(shù)表評頭論足,發(fā)現(xiàn)錯漏百出,巴貝奇目噔口呆,他喊道:“天哪,但愿上帝知道,這些計算錯誤已經(jīng)充斥彌漫了整個宇宙!”所以,他想要造一臺機器來“拯救宇宙”。
巴貝奇的第一個目標(biāo)是制作一臺“差分機”。他從法國人杰卡德發(fā)明的編程提花織布機上獲得靈感,想設(shè)計一臺可以自動處理不同函數(shù)的計算機器。
1822年,巴貝奇小試鋒芒便初戰(zhàn)告捷,第一臺差分機呱呱墜地。但是,這一“小試”也耗去了整整10年。在他孤軍奮戰(zhàn)下造出的這臺機器,運算精度達(dá)到了6位小數(shù),當(dāng)即就演算出好幾種函數(shù)表。后來的實際運用證明,這種機器非常適合于編制航海和天文方面的數(shù)學(xué)用表。
差分機二號失敗
成功的喜悅激勵著巴貝奇,他上書皇家學(xué)會,請求政府資助他建造第二臺運算精度為20位小數(shù)的大型差分機。英國政府破天荒地與他簽訂了第一個合同,財政部慷慨地為這臺大型差分機提供1.7萬英鎊的資助。在當(dāng)年,這筆款項的數(shù)額無異于天文數(shù)字──要知道,1831年約翰·布爾制造一臺蒸汽機車頭的費用才784英磅。
然而,第二臺差分機卻以失敗告終!25000個精密零件,誤差率不超過每英寸千分之一,即便使用現(xiàn)代先進(jìn)的加工設(shè)備和技術(shù),要想造出這種高精度的機械也絕非易事。
當(dāng)時,巴貝奇把差分機交給了英國最著名的機械工程師約瑟夫·克萊門特所屬的工廠制造,但工程進(jìn)度十分緩慢。設(shè)計圖紙改了又改,工人們把零件重做一遍又一遍。日復(fù)一日,年復(fù)一年,直到又一個10年過去了,全部零件卻只完成不足一半數(shù)量。參加試驗的同事們再也堅持不下去,紛紛離他而去。
巴貝奇獨自苦苦支撐了第三個10年,最終無力回天。在痛苦的煎熬中,他無計可施,只得把全部設(shè)計圖紙和已完成的部分零件送進(jìn)倫敦皇家學(xué)院博物館供人觀賞。
分析機——計算機設(shè)計的理論雛形
差分機的制造,雖然以失敗告終,但是,天才巴貝奇提出來的理念卻讓后人敬仰——1834年,巴貝奇提出了一項新的更大膽的設(shè)計。不是僅僅能制表的差分機,而是一種通用的數(shù)學(xué)計算機,即“分析機”——它能自動解算有100個變量的復(fù)雜算題,每個數(shù)可達(dá)25位,速度可達(dá)每秒鐘運算一次。
巴貝奇首先為分析機構(gòu)思了一種齒輪式的“存貯庫”,每一齒輪可貯存10個數(shù),總共能儲存1000個50位數(shù)。分析機的第二個部件是“運算室”,其基本原理與帕斯卡的轉(zhuǎn)輪相似,但他改進(jìn)了進(jìn)位裝置,使50位數(shù)加50位數(shù)的運算可完成于一次轉(zhuǎn)輪之中。
此外,巴貝奇也構(gòu)思了送入和取出數(shù)據(jù)的機構(gòu)以及在“存儲庫”和“運算室”之間運輸數(shù)據(jù)的部件,他甚至還考慮到如何使這臺機器處理依條件轉(zhuǎn)移的動作。
一個多世紀(jì)過去后,現(xiàn)代電腦的結(jié)構(gòu)幾乎就是巴貝奇分析機的翻版,只不過它的主要部件被換成了大規(guī)模集成電路而已。僅此一說,巴貝奇就當(dāng)之無愧于計算機的“開山鼻祖”。(責(zé)任編輯/梅松)