跳轉到

04.1 ENIAC:一萬八千支真空管的發熱巨獸#

一九四六年二月十五日,賓州費城,賓夕法尼亞大學莫爾電機工程學院(Moore School of Electrical Engineering)的房間裡,一台佔據整個牆面、重達三十噸、長約三十公尺的巨大機器向公眾亮相。它叫 ENIAC——Electronic Numerical Integrator and Computer。

美國陸軍軍械部彈道研究實驗室(Ballistic Research Laboratory, BRL 阿伯丁試驗場)出資,莫爾學院承造,合約金額逾六十萬美元。軍方的動機樸素而急迫:造一張砲彈的彈道表。一門新砲的射表需要計算數千條彈道,當時依靠的是幾百名「人工計算員」(human computers)——多半是女性——用手搖計算機一天算幾十條,一張射表要算幾個月。戰爭等不起。

雙雄:Mauchly 的理念,Eckert 的工程#

ENIAC 的兩個靈魂是性格相反的搭檔。

約翰·莫奇利(John Mauchly)是物理系出身的理想主義者。一九三〇年代他在宾州烏爾辛納斯學院教書時,就死磕氣象資料想用機器算天氣預報,一九四一年夏天專程去賓大聽論文講座,遇到年輕助教 J. Presper Eckert。莫奇利的理念直接來自阿塔那索夫(John Atanasoff)—— Iowa State College 的 BC 機,他在一九四一年六月拜訪過阿塔那索夫,讀過他的文件,借鑑了「電子數字計算」的關鍵概念。這段糾葛在戰後黃昏酿成了 Honeywell v. Sperry 那場扭轉專利史的大訴訟(一九七三年,法院判 ENIAC 專利無效,阿塔那索夫被認定為電子數位計算的概念首次提出者——但阿塔那索夫的機器從未完成,真正把它造出來的是莫爾學院)。

J. Presper Eckert(約翰·托德·埃克特,John Presper Eckert,常簡稱 Pres)是工程動物,二十二歲的莫爾學院天才,從小拆遍電器,痴迷於物理世界的 Impossible is nothing:他不安「一百八十支真空管會不過百小時就燒壞」這個『常識』,提出降壓運行(低於額定電壓運行以延長壽命)、把電子管每天開關一次改成全程電流恆定、用冗餘位等級的監測把故障管找出來。他堅持,即使真空管一天壞幾支,機器仍可用「間歇維修」達到每數天一停的可用率。

動手建設的一九四三午五月至一九四四事成後,ENIAC 耗去 18000 支真空管,功率約一百五十千瓦——相當於幾百戶家庭的用電量,散熱靠不斷的通風與近乎「熔爐」的機房空調。每秒可做 五千次加法,這在當時是快過機械計算機一千倍的成就。

十進制與「重接線程式」#

ENIAC 的兩個「反直覺」設計,在今日讀來更具史學意味:

  • 十進制:以十個觸發器代表一位十進數(ring counter 進位),而非二進制。這是對應軍方用戶「直觀」的妥協——彈道表以十進數呈現。
  • 沒有儲存程式:程式不是存在記憶體中的指令,而是物理的插拔線與開關組合。要「改一個程式」,幾位操作者要拔線、設旋鈕,需一至二天。

「程式即插線」這件事暴露了 ENIAC 的本質——它是一台可重構的計算器,還不是現代意義的電腦。實際完成時戰爭將結束,第一個大程式由六位年輕的女性數學家(Kathleen McNulty、Frances Bilas、Betty Snyder、Ruth Lichterman、Jean Jennings、Marlyn Wescoff)撰寫——她們是下一章的主角。

推動合約與工程管理的另一關鍵人物是陸軍中尉(後為上尉)赫爾曼·戈爾德斯坦(Herman Goldstine),BRL 官方代表。他不是工程師,卻扮演了完美的計畫經理:爭取軍費、維持政治支持、協調莫爾學院與阿伯丁、忍受官僚的公開地盤鬥爭。戰後他與馮·諾伊曼的合作,造就了下下章的 stored-program 革命。

首演與謝幕#

一九四六年二月十五日的演示,媒體稱之為「The Brain(萬能腦)」。但節骨眼是:軍方真正要的是氫彈的相關計算——一九四五年戰後,ENIAC 的第一個實彈產值並非彈道,而是由洛斯阿拉莫斯用來檢算熱核武器的物理模型。科技與戰爭的臍帶,在電腦的出生證明上就已蓋章。

一九四七年,約翰·馮·紐曼率領的一項先鋒在 ENIAC 上跑了第一個數值天氣預報——二十四小時預報計算需約一千二百萬次算術,跑了幾夜(ENIAC 內建 20 加法器做到每秒五千加減,這是 Mauchly 原始夢想的實現)——縱然結果「預報」得不好,它證明了想法可行。

ENIAC 落成即過時。真正的革命早在圖紙上:一九四五年起,EDVAC 的設計把程式放進記憶體——那是馮·紐曼報告草案的主場,我們放到 04.3 細講。ENIAC 的地位,正是那段過渡的「舊時代的極致」:它把電子計算的可能性用一萬八千支管子硬灌出來,證明「電子、大規模、可靠」可以共存;下一棒,則是把「什麼是電腦」從物理插拔,抽離成純粹的記憶與指令。