您的位置:首頁>正文

電子電腦的先驅:機械電腦背後的故事和原理02

目錄

1 巴貝奇的差分機、分析機

2 霍利瑞斯的製錶機

3 Zuse I

4 Mark I

1 巴貝奇的差分機、分析機

英國數學家、發明家查理斯·巴貝爾(Charles Babbage, 1791-1871)出生于一個富有的銀行家的家庭, 在劍橋學習時, 他認為可以利用蒸汽機進行運算。 從劍橋大學畢業後留校, 在數學領域造詣頗深, 20多歲就加入了英國皇家學會。 巴貝奇用從20歲到30歲之間的十年時間研製成功了差分機, 以其計算速度和精度震驚科學界, 也讓政府同意出資研究其下一代機械式電腦-大型差分機。 但受當時的加工精度限制, 巴貝奇又總在工廠加工零部件的同時在圖紙上修修改改,

經常導致大批量的零件返工。 如此折騰了20年, 巴貝奇花光了所有的錢, 宣佈製造失敗。 然後他用了兩年時間總結失敗的教訓, 1834年, 在50歲的時候, 這個倔強的老頭子開始設計更為複雜精密的分析機, 可以運行包含“條件”、“迴圈”語句的程式, 有寄存器用來存儲資料。

Charles Babbage (1791-1871) ↑

分析機具有現代電子電腦的全部特徵, 有它自己設計獨特的“鍵盤”、“顯示器”、“CPU”、“記憶體”等等現代電腦的關鍵部件, 只是不用電源而已。 巴貝奇計畫的重要創新之處, 並不在於機械運算, 而是在於他發現了, 對算術過程的組織和邏輯控制才是最重要的。 當然, 分析機的製造最後還是失敗了。

下圖就是巴貝奇設計出的分析機, 差不多在設計完畢200來年才被製造出來。

分析機採用的一些電腦思想延用至今。 分析機包括的存儲和碾磨, 就非常類似於今天電腦中採用的記憶體和處理器。 輸入和輸出都採用打孔卡(十九世紀Jacquard發明的一種卡片)進行。

特別是, 巴貝奇有一個關鍵的想法, 機器必須能夠在一串指令卡片中來回遍歷, 並根據實際計算的情況, 來決定路過或重複。 這種“條件分析”的想法, 是他最先進的地方。 而這種自主性, 也以後的圖靈機是等價的, 圖靈機就是根據紙帶上的指令來切換機器的狀態。 巴貝奇很清楚, 正是這一點, 使他的機器具有通用的特性。

如果沒有“條件分支”, 或者說一個機械化的“如果...則...“的能力, 那麼他的偉大構想, 與普通的加法機就沒有什麼區別。 就只能將它看成一條流水線, 從開始到結束, 一切都是確定的, 程式一旦開始執行, 就不會有任何變化。 而在他的模型的, ”條件分支“意味著機器不僅具有工人的能力, 還具有識別、決策和控制的能力。

巴貝奇關於通用機器的這些想法, 比他的時代超前了100年。

2 霍利瑞斯的製錶機

赫爾曼·赫勒裡特(Herman Hollerith, 1860-1929), 1879年畢業于哥倫比亞大學。 他對數學和機械方面的問題有濃厚興趣, 並有顯著的才能。 因此, 赫勒裡特畢業後, 參加了美國人口普查工作。

Herman Hollerith circa 1888

一天, 霍利瑞斯和一位在人口調查局工作的官員比林茲聊天, 幾句話就扯到了令人厭煩而又無法回避的人口調查問題上, 兩個人開始發牢騷, 比林茲更是抱怨不停。 念了一陣苦經之後, 比林茲忽然提到一個他已考慮了多日的設想, 那就是使用穿孔卡片説明統計。 讓每個接受調查的人都使用相同規格的硬紙卡片, 按照不同的個人情況在不同的位置上穿孔, 然後使用一種特殊的機器把這些資訊讀出並加以統計,至於機器如何設計他就不得而知了。

比林茲的設想給霍利瑞斯以極大的啟發,激起了霍利瑞斯的創造靈感,使他仿佛看到了解決問題的曙光。他過去聽說過提花編織機上穿孔卡的故事,那件事發生在1728年,一位法國工程師發明了一種自動提花織布機,其中設計了一連串長長的穿了孔的卡片,讓卡片轉動,使得那些與卡片上的洞眼正好對著的織針順利通過;而不相對的織針通不過。這樣,紗線就織出了規定好的花紋。現在已是19世紀末,時代不同了,要求也不一樣。霍利瑞斯懂得,僅用機械的方法顯然會黔驢技窮,只有配上最新的電工技術才會使問題得到解決。

赫勒裡特認為,人口普查統計資料的處理應該實現機械化。於是他用穿孔卡和電氣控制技術來創造一種資料分析處理機。1888年,他製造出一台製表機,並送往巴黎國際博覽會去展覽。這台製表機採用機電式的自動計數裝置,取代了純機械的計數裝置,加快了資料處理的速度,能避免手工操作引起的差錯。於是,美國1890年人口普查的統計製表工作,就全部採用了赫勒裡特製表機。

1822年,法國的蓋 呂薩克和阿拉戈利用電流的磁效應,把通電導線繞在軟鐵上,使一塊普通的軟鐵變成了磁鐵。幾年後,美國的亨利在此基礎上發明了磁性強大的電磁鐵,利用電磁鐵的原理,人們製成了繼電器。繼電器是在機電式電腦上第一個派上用場的電器部件。

繼電器是一種開關,不過它的開啟與閉合不是靠人手去撥弄,而是靠微弱的電流。這種弱電流通過一個電磁鐵的線圈,使電磁鐵磁化並將一個銜鐵吸下。銜鐵連著一個開關,就可使得另一個大電流接通或斷開。有了繼電器,一個微弱的電流就可以控制一個大電流的開斷。而微弱電流本身的開斷不一定需要我們用手去撥動,它可以通過其他各種手段達到。比如無線電信號、導電的水、能導電的人體等,因此,繼電器在各種控制電路中有著廣泛的應用。

電腦的研製者們欣喜地發現,繼電器的應用還有潛力可挖,它可以用來計數。它有開和關兩種狀態,就可以用來表示二進位中“0”和“1”兩個數。用多個繼電器就可以記錄多位元的二進位數字。正是因為繼電器具備這樣的特性,所以,後來在機電式電腦中發揮了關鍵作用。

霍利瑞斯製表機主要由五個部分構成:接受壓力機、繼電器、計數器、分類盒、電池。製表機上閱讀穿孔卡片的設計別具匠心,現在我們就以一個孔的位置為例介紹一下。先將卡片平放在相應位置上,孔的位置上方是一根帶彈簧的金屬棒,下方是一個水銀盃。工作時,金屬棒被輕輕地壓下來,如果該位置上沒有孔,金屬棒被卡片紙擋住下不來,不能出現後續動作。反之,由於該位置事先已穿好了孔,金屬棒就“長驅直入”地插入下方水銀盃中。水銀和金屬棒都是導體,它們接觸以後,就好比接通了開關,形成了回路,產生電流。由於所加的電壓低,形成的電流很弱,不會產生損壞製錶機的電火花,也不會對人體造成傷害。另一方面,電流雖弱,但可以使繼電器吸合,產生大電流。大電流使相應的計數器加1,這樣就完成了此項目的一個人的統計。這種設計實在太巧妙了!金屬棒有很多根,它的數目由統計專案和分類的多少來決定。

霍列瑞斯博士巧妙的設計在於自動統計。他在機器上安裝了一組盛滿水銀的小杯,穿好孔的卡片就放置在這些水銀盃上。卡片上方有幾排精心調好的探針,探針連接在電路的一端,水銀盃則連接於電路的另一端。與傑卡德提花機穿孔紙帶的原理類似:只要某根探針撞到卡片上有孔的位置,便會自動跌落下去,與水銀接觸接通電流,啟動計數裝置前進一個刻度。由此可見,霍列瑞斯穿孔卡表達的也是二進位資訊:有孔處能接通電路計數,代表該調查專案為“有”(“1”),無孔處不能接通電路計數,表示該調查專案為“無”(“0”)。

3 Zuse I

康拉德·楚澤(Konrad Zuse於1910-1995)出生在柏林,是一位德國工程師。他提出了電腦程式控制的基礎概念,於1941年Zuse首次設計完成了使用繼電器的程式控制電腦。

楚澤在父母的幫助下,他把家中的起居室隔出一間,改造成“實驗室”兼“製造廠”,孤身一人開始了漫長的研製生涯。楚澤生活在法西斯統治下的德國,無從得知美國科學家研製電腦的消息,甚至沒有聽說巴貝奇和霍列瑞斯的名字。在這一點上,他遠沒有美國發明家幸運,無法得到大學或政府機構的任何資助,只有幾個朋友“贊助”了很少的一點錢。

幾乎用了兩年時間在黑暗中摸索,楚澤憑著頑強的毅力獨自奮鬥。他認為,電腦最重要的部分不一定是計算本身,而是過程和計算結果的傳送和儲存。因此,他把研究的重點放在記憶體上,設計了一種可以存儲64位元數的機械裝置——數千片薄鋼板用螺栓擰在一起的笨重部件,體積約1立方米——然後與機械運算機構連接起來。朋友們都不太懂他想幹什麼,只能提供有限的幫助,例如,幫他用切割設備加工了數以百計的金屬片。其它的薄鋼板,只好靠手鋸在圓鋼上一片一片鋸下來。以這種簡陋的條件,1938年,楚澤居然完成了一台可程式設計數位電腦Z-1。他花光了僅有的幾千馬克,還是無法買到更合適的零件。因此,Z-1電腦實際上是一台實驗模型,雖然可以完成3×3矩陣運算過程,但始終未能投入實際使用。

Z-I電腦最大的貢獻是楚澤第一次採用了二進位數字,在薄鋼板組裝的記憶體中,楚澤用一個在細孔中移動的針,指明數字“0”或“1”。他的這種選擇,明顯地受到萊布尼茨著作的啟發,他後來發表的研究報告,副題就是“向萊布尼茨致敬”。這台機器也採用了“穿孔帶”輸入程式,不過不是紙帶,而是35毫米電影膠片;資料則由一個數位鍵盤敲入,計算結果用小電燈泡顯示。

Zuse通過使用二進位作為權宜之計,避免了巴貝奇需要的成千上成個嚙合的十齒齒輪。這個在理論上並不是革命性的進展,但是從實踐的角度來看,這是極其重要的簡化。一般的工程師都會用十進位來表示數位,而Zuse從中解放出來了。

由於純機械式Z-1電腦性能不理想,第二年,楚澤的朋友給了他一些電話公司廢棄的繼電器,楚澤用它們組裝了第二台電磁式電腦Z-2, 這台機器已經可以正常工作。這時,他的工作引起德國飛機實驗研究所的關注,使他得到了一筆資助。1941年,第三台電磁式電腦Z-3完成,使用了2600個繼電器,用穿孔紙帶輸入,實現了二進位數字程式控制。程式控制思想雖然過去也有人提倡,但楚澤是把它付諸實施的第一人。Z-3能達到每秒3~4次加法的運算速度,或者在3~5秒內完成一次乘法運算。1942年,在緊張研究的間隙裡,他寫作了世界上第一個下國際象棋的電腦程式。

隨後,楚澤創辦了“楚澤電腦公司”,1958年研製出電子管通用電腦Z-22R,距離第一台電子管通用電腦ENIAC誕生已經過去了12年之久。電腦史學家認為,如果楚澤不是生活在法西斯統治下的德國,他可能早就把Z型電腦系列升級為電子電腦,世界電腦的歷史將會改寫。事實上,早在1938年,楚澤和他的朋友已經在考慮用2000個電子管和其他電子元件組裝新的電腦。當他在戰後聽說美國賓夕法尼亞大學早已研製出電子管電腦的消息,不禁感歎地說:“我所能做的,僅僅是搖搖頭而已。”

4 Mark I

20世紀40年代,哈佛大學的霍華德·艾肯(Howard Aiken,1900-1973)受到巴貝奇的啟發,始有 Harvard Mark I 的誕生。

艾肯 ↑

艾肯和IBM公司長達5-6年的合作和努力(當然也包括難以避免的摩擦和碰撞),Mark I終於在1944年5月完工並投入使用。它用了3000多個電機驅動的繼電器,是一個重達5噸的龐然大物,造價高達50萬美元(有的資料甚至說超過100萬美),其中IBM公司的投資占2/3,其餘1/3 由海軍資助。其核心是71個迴圈寄存器(rotating register,把運算中暫時保存運算元的設備叫做register就始於Mark I),每個可存放一個正或負的23 bit的數字。資料和指令通過穿孔卡片機輸入,輸出則由電傳打字機實現。其加法速度是300ms,乘法速度是6s,除法速度是11.4 s。這與現代電腦當然無法相比,即使與晚它兩年誕生的世界上第一台電子電腦ENIAC相比也顯得十分落後,但它卻實實在在是世界上第一台實現順序控制的自動數位電腦,IBM公司方面把它命名為ASCC,即Automatic Sequence Controlled Calculator,是計算技術歷史上的一個重大突破。4個專家過去用3周時間才能完成的任務,在Mark I上只要19個小時就完成了。而且它非常可靠,每週工作7天,每天工作24小時,這是初期的電子電腦無法比擬的。

Mark I主要供海軍艦船局(Bureau of Ships)用於計算彈道和編制射擊表,也曾在曼哈頓計畫中計算有關原子彈的問題。此外,它也為哈佛大學內外的科學家服務。

Mark I工作到1958年才退役,現在還在美國被仔細地保存著。

馬克一號之後有馬克二號(在1947年 或是 1948年),馬克三號/ADEC(1949年九月)以及哈佛馬克四號(1952年),全都是Aiken的工作成果。馬克二號是馬克一號的效能增進版,但也是由機電繼電器所構成。馬克三號部分採用電子元件,而馬克四號就全部改用電子元件了,也就是固態元件。馬克三號與馬克四號使用磁鼓記憶體,馬克四號同時也有使用磁芯記憶體。

-End-

然後使用一種特殊的機器把這些資訊讀出並加以統計,至於機器如何設計他就不得而知了。

比林茲的設想給霍利瑞斯以極大的啟發,激起了霍利瑞斯的創造靈感,使他仿佛看到了解決問題的曙光。他過去聽說過提花編織機上穿孔卡的故事,那件事發生在1728年,一位法國工程師發明了一種自動提花織布機,其中設計了一連串長長的穿了孔的卡片,讓卡片轉動,使得那些與卡片上的洞眼正好對著的織針順利通過;而不相對的織針通不過。這樣,紗線就織出了規定好的花紋。現在已是19世紀末,時代不同了,要求也不一樣。霍利瑞斯懂得,僅用機械的方法顯然會黔驢技窮,只有配上最新的電工技術才會使問題得到解決。

赫勒裡特認為,人口普查統計資料的處理應該實現機械化。於是他用穿孔卡和電氣控制技術來創造一種資料分析處理機。1888年,他製造出一台製表機,並送往巴黎國際博覽會去展覽。這台製表機採用機電式的自動計數裝置,取代了純機械的計數裝置,加快了資料處理的速度,能避免手工操作引起的差錯。於是,美國1890年人口普查的統計製表工作,就全部採用了赫勒裡特製表機。

1822年,法國的蓋 呂薩克和阿拉戈利用電流的磁效應,把通電導線繞在軟鐵上,使一塊普通的軟鐵變成了磁鐵。幾年後,美國的亨利在此基礎上發明了磁性強大的電磁鐵,利用電磁鐵的原理,人們製成了繼電器。繼電器是在機電式電腦上第一個派上用場的電器部件。

繼電器是一種開關,不過它的開啟與閉合不是靠人手去撥弄,而是靠微弱的電流。這種弱電流通過一個電磁鐵的線圈,使電磁鐵磁化並將一個銜鐵吸下。銜鐵連著一個開關,就可使得另一個大電流接通或斷開。有了繼電器,一個微弱的電流就可以控制一個大電流的開斷。而微弱電流本身的開斷不一定需要我們用手去撥動,它可以通過其他各種手段達到。比如無線電信號、導電的水、能導電的人體等,因此,繼電器在各種控制電路中有著廣泛的應用。

電腦的研製者們欣喜地發現,繼電器的應用還有潛力可挖,它可以用來計數。它有開和關兩種狀態,就可以用來表示二進位中“0”和“1”兩個數。用多個繼電器就可以記錄多位元的二進位數字。正是因為繼電器具備這樣的特性,所以,後來在機電式電腦中發揮了關鍵作用。

霍利瑞斯製表機主要由五個部分構成:接受壓力機、繼電器、計數器、分類盒、電池。製表機上閱讀穿孔卡片的設計別具匠心,現在我們就以一個孔的位置為例介紹一下。先將卡片平放在相應位置上,孔的位置上方是一根帶彈簧的金屬棒,下方是一個水銀盃。工作時,金屬棒被輕輕地壓下來,如果該位置上沒有孔,金屬棒被卡片紙擋住下不來,不能出現後續動作。反之,由於該位置事先已穿好了孔,金屬棒就“長驅直入”地插入下方水銀盃中。水銀和金屬棒都是導體,它們接觸以後,就好比接通了開關,形成了回路,產生電流。由於所加的電壓低,形成的電流很弱,不會產生損壞製錶機的電火花,也不會對人體造成傷害。另一方面,電流雖弱,但可以使繼電器吸合,產生大電流。大電流使相應的計數器加1,這樣就完成了此項目的一個人的統計。這種設計實在太巧妙了!金屬棒有很多根,它的數目由統計專案和分類的多少來決定。

霍列瑞斯博士巧妙的設計在於自動統計。他在機器上安裝了一組盛滿水銀的小杯,穿好孔的卡片就放置在這些水銀盃上。卡片上方有幾排精心調好的探針,探針連接在電路的一端,水銀盃則連接於電路的另一端。與傑卡德提花機穿孔紙帶的原理類似:只要某根探針撞到卡片上有孔的位置,便會自動跌落下去,與水銀接觸接通電流,啟動計數裝置前進一個刻度。由此可見,霍列瑞斯穿孔卡表達的也是二進位資訊:有孔處能接通電路計數,代表該調查專案為“有”(“1”),無孔處不能接通電路計數,表示該調查專案為“無”(“0”)。

3 Zuse I

康拉德·楚澤(Konrad Zuse於1910-1995)出生在柏林,是一位德國工程師。他提出了電腦程式控制的基礎概念,於1941年Zuse首次設計完成了使用繼電器的程式控制電腦。

楚澤在父母的幫助下,他把家中的起居室隔出一間,改造成“實驗室”兼“製造廠”,孤身一人開始了漫長的研製生涯。楚澤生活在法西斯統治下的德國,無從得知美國科學家研製電腦的消息,甚至沒有聽說巴貝奇和霍列瑞斯的名字。在這一點上,他遠沒有美國發明家幸運,無法得到大學或政府機構的任何資助,只有幾個朋友“贊助”了很少的一點錢。

幾乎用了兩年時間在黑暗中摸索,楚澤憑著頑強的毅力獨自奮鬥。他認為,電腦最重要的部分不一定是計算本身,而是過程和計算結果的傳送和儲存。因此,他把研究的重點放在記憶體上,設計了一種可以存儲64位元數的機械裝置——數千片薄鋼板用螺栓擰在一起的笨重部件,體積約1立方米——然後與機械運算機構連接起來。朋友們都不太懂他想幹什麼,只能提供有限的幫助,例如,幫他用切割設備加工了數以百計的金屬片。其它的薄鋼板,只好靠手鋸在圓鋼上一片一片鋸下來。以這種簡陋的條件,1938年,楚澤居然完成了一台可程式設計數位電腦Z-1。他花光了僅有的幾千馬克,還是無法買到更合適的零件。因此,Z-1電腦實際上是一台實驗模型,雖然可以完成3×3矩陣運算過程,但始終未能投入實際使用。

Z-I電腦最大的貢獻是楚澤第一次採用了二進位數字,在薄鋼板組裝的記憶體中,楚澤用一個在細孔中移動的針,指明數字“0”或“1”。他的這種選擇,明顯地受到萊布尼茨著作的啟發,他後來發表的研究報告,副題就是“向萊布尼茨致敬”。這台機器也採用了“穿孔帶”輸入程式,不過不是紙帶,而是35毫米電影膠片;資料則由一個數位鍵盤敲入,計算結果用小電燈泡顯示。

Zuse通過使用二進位作為權宜之計,避免了巴貝奇需要的成千上成個嚙合的十齒齒輪。這個在理論上並不是革命性的進展,但是從實踐的角度來看,這是極其重要的簡化。一般的工程師都會用十進位來表示數位,而Zuse從中解放出來了。

由於純機械式Z-1電腦性能不理想,第二年,楚澤的朋友給了他一些電話公司廢棄的繼電器,楚澤用它們組裝了第二台電磁式電腦Z-2, 這台機器已經可以正常工作。這時,他的工作引起德國飛機實驗研究所的關注,使他得到了一筆資助。1941年,第三台電磁式電腦Z-3完成,使用了2600個繼電器,用穿孔紙帶輸入,實現了二進位數字程式控制。程式控制思想雖然過去也有人提倡,但楚澤是把它付諸實施的第一人。Z-3能達到每秒3~4次加法的運算速度,或者在3~5秒內完成一次乘法運算。1942年,在緊張研究的間隙裡,他寫作了世界上第一個下國際象棋的電腦程式。

隨後,楚澤創辦了“楚澤電腦公司”,1958年研製出電子管通用電腦Z-22R,距離第一台電子管通用電腦ENIAC誕生已經過去了12年之久。電腦史學家認為,如果楚澤不是生活在法西斯統治下的德國,他可能早就把Z型電腦系列升級為電子電腦,世界電腦的歷史將會改寫。事實上,早在1938年,楚澤和他的朋友已經在考慮用2000個電子管和其他電子元件組裝新的電腦。當他在戰後聽說美國賓夕法尼亞大學早已研製出電子管電腦的消息,不禁感歎地說:“我所能做的,僅僅是搖搖頭而已。”

4 Mark I

20世紀40年代,哈佛大學的霍華德·艾肯(Howard Aiken,1900-1973)受到巴貝奇的啟發,始有 Harvard Mark I 的誕生。

艾肯 ↑

艾肯和IBM公司長達5-6年的合作和努力(當然也包括難以避免的摩擦和碰撞),Mark I終於在1944年5月完工並投入使用。它用了3000多個電機驅動的繼電器,是一個重達5噸的龐然大物,造價高達50萬美元(有的資料甚至說超過100萬美),其中IBM公司的投資占2/3,其餘1/3 由海軍資助。其核心是71個迴圈寄存器(rotating register,把運算中暫時保存運算元的設備叫做register就始於Mark I),每個可存放一個正或負的23 bit的數字。資料和指令通過穿孔卡片機輸入,輸出則由電傳打字機實現。其加法速度是300ms,乘法速度是6s,除法速度是11.4 s。這與現代電腦當然無法相比,即使與晚它兩年誕生的世界上第一台電子電腦ENIAC相比也顯得十分落後,但它卻實實在在是世界上第一台實現順序控制的自動數位電腦,IBM公司方面把它命名為ASCC,即Automatic Sequence Controlled Calculator,是計算技術歷史上的一個重大突破。4個專家過去用3周時間才能完成的任務,在Mark I上只要19個小時就完成了。而且它非常可靠,每週工作7天,每天工作24小時,這是初期的電子電腦無法比擬的。

Mark I主要供海軍艦船局(Bureau of Ships)用於計算彈道和編制射擊表,也曾在曼哈頓計畫中計算有關原子彈的問題。此外,它也為哈佛大學內外的科學家服務。

Mark I工作到1958年才退役,現在還在美國被仔細地保存著。

馬克一號之後有馬克二號(在1947年 或是 1948年),馬克三號/ADEC(1949年九月)以及哈佛馬克四號(1952年),全都是Aiken的工作成果。馬克二號是馬克一號的效能增進版,但也是由機電繼電器所構成。馬克三號部分採用電子元件,而馬克四號就全部改用電子元件了,也就是固態元件。馬克三號與馬克四號使用磁鼓記憶體,馬克四號同時也有使用磁芯記憶體。

-End-

同類文章
Next Article
喜欢就按个赞吧!!!
点击关闭提示