Author name: 楊慶忠

計算機到美國-5

2-5.女性程式員開始露臉 先前提過的哈柏(Hopper)女士,她是以海軍上尉的身分,協助當時的海軍少校艾肯,在哈佛大學編寫馬克一號使用手冊。 她也是馬克一號主要的程式設計人員,雖然那時候還是使用打孔紙帶輸入程式碼,但馬克一號在哈柏的努力下,可說是當時最適於輸入電腦程式的計算機。 在此之外,一群默默付出的娘子軍,為ENIAC正式運作所做的貢獻,則易為人所忽略。 摩爾學院原本就和彈道研究實驗室合作,提供大量射擊表計算工作,給全美各地具數學背景的女性前來應徵,這當然是因為女性工作者較細心和負責。當中有六位表現特別傑出的,被選入ENIAC團隊做程式設計的工作。 圖2-5-1. ENIAC兩位女性程式設計員,Jennings(左)、Bilas(右)。 ENIAC程式設計可比馬克一號麻煩多了,它的系統複雜,每次更改輸入程式,都要大幅插拔一些電纜和開關,在當時可算是粗活。這些工作居然會一股腦交給女性來做,可見當時社會風氣對女性還是有些歧視。 她們被要求設計程式時,也要考慮到電路元件和線路的因素,所以這認真的六人組,慢慢地變成男性工程師不可或缺的工作夥伴。甚至她們也逐漸理解,程式設計的重要性,可能不亞於電子電路的設計。 從愛達到哈柏女士到ENIAC這程式設計六人組,明白顯示出,天性細膩堅忍且恪守工作倫理的女生,其實很適合從事程式設計的相關工作。

計算機到美國-5 Read More »

計算機到美國-4

2-4.馮諾伊曼和艾柯特 ENIAC使用了1萬8千隻真空管,是一個難度極高的複雜系統。幸賴艾柯特領導的年輕工程師團隊,夜以繼日克服萬難,終於在1945年11月大功告成。 科學界也開始注意到賓州大學的研究成果,摩爾學院為此舉辦了暑期課程,讓年輕科學家能夠參與。 ENIAC可以在一秒鐘完成五千次加減運算,比馬克一號快了一百多倍,功能十分強大。 但它有幾個問題。它是十進位而非二進位,真空管用了太多,改變程式太耗時間,儲存容量太小…………….。 圖2-4-1.摩爾學院之ENIAC 這些問題在發展第二代的新機型時,勢必要想辦法解決。 這時候,著名的匈牙利裔科學家馮伊諾曼登上舞台,適時為計算機結構做出了不可忽視的貢獻。 普林斯頓教授馮伊諾曼,是高士譚在亞伯丁車站碰巧遇到的,當時他是彈道研究實驗室的顧問。由於他在科學界的影響力,很快地,ENIAC計畫也邀請他擔任顧問。 馮伊諾曼針對ENIAC的缺點提出一些解決方案,並把下一代要開發的機型命名為「電子離散可變自動計算機」(EDVAC)。 EDVAC有幾個特色,第一,它是使用二進位;第二,它強調可以把指令和資料共同儲存在內部記憶體上。 第二點是相當重要的突破,如果計算機的記憶體在運算時,可以同時儲存程式的指令和計算的數值,那就不用每次都要機械式地從外部輸入卡片,而是在電子電路內部直接存取資料或指令就可以了,這大大地提升處理速度,增加儲存空間以及減少真空管的使用量。 這個原始想法,應該是來自莫渠利和艾柯特,但馮伊諾曼在EDVAC中大力強調這項特色,變成似乎他才是主要貢獻者。 這導致了研究團隊的分裂。莫渠利和艾柯特於1946年3月在費城成立一家公司開始電腦製造業務;馮伊諾曼也帶著高士譚回普林斯頓大學,著手建立其電腦實驗室。 圖2-4-2.馮伊諾曼在普林斯頓高等研究院所建立的電腦。

計算機到美國-4 Read More »

計算機到美國-3

2-3.莫渠利和高士譚 為了因應二戰電子技術人力需求,摩爾學院在1941年暑假開辦電子學課程,其中一位約翰霍普金斯大學物理學博士班畢業,在爾賽納斯學院擔任講師的莫渠利,是結業生中表現最傑出的,獲得留在摩爾學院擔任助理教授的機會。 莫渠利曾造訪愛荷華州立大學「被遺忘的電腦之父」–阿塔那索夫,學到一些概念。他一直對製作真空管式計算機很感到興趣,本身也具深厚的計算理論基礎。 在摩爾學院內,莫渠利結識了優秀的電子工程師艾柯特,他是碩士班畢業生,兩人對電子式計算機的願景,都有強烈的熱忱。 莫渠利在1942年8月,提出一份備忘錄,標題為《高速真空管在計算上的應用》,但並沒有受到賓州大學的重視。 但這份備忘錄卻引起了一位軍官的注意,他是芝加哥大學數學博士班畢業的高士譚中尉,在二戰期間,負責聯絡摩爾學院有關女性計算員的各項事宜。 莫渠利和高士譚的理論背景,以及目睹女性計算員被數值大海淹沒的窘境,都讓他們瞭解新型計算機的建造是勢在必行。 所以在高士譚的協助下,莫渠利將計畫名稱修訂為「電子數值積分器與計算機」(ENIAC),在1943年4月9日正式拍板定案。

計算機到美國-3 Read More »

計算機到美國-2

2-2.賓州大學摩爾學院 馬克一號做一次乘法計算,就需要花費6秒鐘的時間,即使是在1944年,都不是讓人滿意的速度。所以接下來計算機的開發,一定要朝提升效率上著眼。 馬克一號雖然有用到電磁鐵式的繼電器,但基本上,它是一部機械式的計算機,運算速度的加強,受到先天條件上的限制。 要加快運算速度,一定要用到電子式的電路,也就是應該使用真空管來取代繼電器。 真空管是當時極重要的基本電子元件,具有整流和放大的功能,類似現在的電晶體。 這個計算機電子化的重責大任,就落在賓州大學的摩爾學院上。 圖2-2.賓州大學早期校園 賓州大學的創建人就是如雷貫耳的富蘭克林(他在閃電交加的夜晚,和兒子放風箏的故事,經多方考據,證明是子虛烏有),它的華頓商學院目前在全美排行數一數二。它的電機學院是由Alfred Fitler Moore所捐贈,所以稱之為摩爾學院。 賓州大學位於費城,離東北方紐澤西州的普林斯頓大學約一個小時路程,離西南方馬里蘭州境內,美國陸軍委託計畫案的亞伯丁試射場,鐵路相連不到一小時車程。 在二戰前夕,亞伯丁試射場正式命名為「彈道研究實驗室」,招募各方科學家進行彈道數學計算相關工作。 賓州大學摩爾學院和彈道研究實驗室,各自擁有一部類比式微分解析機,時相交流,建立了良好的合作關係。

計算機到美國-2 Read More »

計算機到美國-1

2-1.哈佛大學艾肯教授 艾肯於1937年,在哈佛大學物理系博士班寫論文時,必須解真空管設計中的非線性微分方程式。 這種計算,用當時的加算機來處理非常繁雜,而隔壁的麻省理工學院類比式計算機也無法勝任,所以艾肯大膽地向系上尋求支援,幫他建造一台數位計算機。 系上對這件事的處理可想而知,一如眾人預期,反應極其冷淡。但好巧不巧,哈佛物理系實驗室頂樓,居然有一部份巴貝奇機器的計算齒輪,被固定在木板上供展示。 原來這是巴貝奇兒子亨利,在哈佛學院建院250週年紀念(1886)時,寄給哈佛學院院長的,希望把父親孕育計算機的種子,播撒到新大陸的沃土上。 艾肯鍥而不捨,將計畫向各方推薦,最終獲得IBM公司的青睞,在IBM頂尖工程師的協助下,建造出真正可以運作計算的電腦,可說是巴貝奇分析機的夢想成真。 圖2-1-1.哈佛馬克一號 這部電腦被取名為「馬克一號」(Mark Ⅰ)。它的運算速度並不快,每秒鐘只能做三次加法或減法,並不是採取二進位,而且體積龐大,稱不上是極先進的成品。 而且在1944年IBM為它舉辦的發表會上,艾肯居然將功勞往自己身上攬,未能讓大眾了解IBM公司所付出的心力,讓多人通力合作的成果為之蒙塵。IBM後來轉而資助哥倫比亞大學的計算機研究。 但馬克一號的意義在於,它是電腦時代的圖騰,它是第一台實際運行的全自動計算機,也是幫晚年抑鬱以終的巴貝奇,做了一次最佳的平反。 另外,二戰末期,是由軍方和IBM共同研發計算機,所以在IBM將馬克一號運交哈佛大學時,艾肯是以二戰服役海軍軍官的身分,代表軍方接管這部機器。之後,他和哈柏女仕一起編寫厚達五百頁的使用手冊,並請哈柏負責打孔卡片程式輸入的部分,她後來也在軟體界做出不少貢獻。   圖2-1-2.艾肯(左一)和哈柏(左二)以海軍軍官身分在哈佛。

計算機到美國-1 Read More »

計算機到美國

第二章:計算機到美國 在巴貝奇和愛達那段期間,法國人柯爾瑪,也在1820年發明了加減計算機–Arithmometer。這部機器傳入美國並經改良後,在兩次大戰期間,竟然銷售了幾百萬台。 美國人自來就勇於嘗試各類新開發的辦公室裝置,例如像打字機、收銀機、加算機等。 因此在1890年的人口普查招標中,評審委員會一致同意,引用卡片打孔技術的霍勒里思電動列表系統,贏得該次人口普查的標案。 霍勒里思後來成立列表機器公司,提供資料統計分析服務。該公司之後被CTR收購,最終變成IBM國際商務機器公司。

計算機到美國 Read More »

計算機在歐洲-5

1-5.艾達女士的演算法 艾達女士(1815~1852)有一個赫赫有名的父親,就是家喻戶曉的英國詩人拜倫男爵。 她母親安娜貝拉有不錯的數學天份,在和拜倫離婚後,為了不讓艾達沿襲她父親浪漫不羈的天性,聘請了家庭教師來加強她數學和科學的訓練。 但艾達同時遺傳了父母兩方的基因,以至於特別鍾情於所謂「詩意的科學」(poetical science),就是像計算機這種需要結合演算法,合乎邏輯、結構優美的科學。 巴貝奇的分析機從未真正運作過,但他所提的概念,例如數值儲存和算術運算分開,使用不同卡片輸入來執行不同運算等,讓分析機在概念上類似現代的電腦。 艾達是在社交場合認識巴貝奇,她能理解分析機的潛力,也協助翻譯義大利人描述分析機的論文,還加進了篇幅更長的「譯者評注」。 在1843年所寫的「譯者評注」中,艾達為後世留下兩個主要貢獻,也讓她因此名垂青史。 圖1-5-1.艾達女士圖像 其一,艾達認為,分析機不僅能做數值運算,還能做邏輯運算(例如比較判斷等),甚至,還可以處理音樂、影像等可供算術或邏輯運算的內容。 其二,她提出了現代電腦中「演算法」的概念,並以白努利數列舉例說明。 白努利數列是很複雜的無限數列,不好理解。我們可以用比較簡單的例子來認識何謂「演算法」。 例如我們知道直角三角形一邊為3, 一邊為4, 欲求其斜邊大小。 這個題目我們可引用畢氏定理「斜邊平方為兩直角邊之平方和」。所以先求3平方以及4平方之和後,再開根號得5。 在這個例子中,「先各求兩直角邊平方,將其相加後,再開根號」,即為本題之「演算法」。因為它是可以寫成程式,以計算出任何直角三角形的斜邊值。 另一個例子是從1加到10,1+2+3+4+5+6+7+8+9+10= ?。 我們用手算這題目,當然可以告訴自己,應該要一個一個慢慢加。但電腦並不懂什麼叫做「一個一個慢慢加」,你必須要教它如何進行「一個一個慢慢加」的程序。 你必須告訴它,「從1開始,每次加上一個比現有數字多1的數字,一直累加到10為止。」 上述過程,可以寫成迴圈(loop)程式碼,所以也是一種演算法。 簡單地講,「演算法」就是解答問題的步驟程序,並且可轉換成程式碼。「演算法」不一定要求出正確解,也可以只求出近似解︒ 愛達當年已經提出「次常式」的概念,也會使用遞迴的技巧,後世為表彰她的貢獻,美國國防部開發的程式語言Ada,就是以她來命名。 圖1-5-2.艾達的白努利數演算法

計算機在歐洲-5 Read More »

計算機在歐洲-4

1-4.巴貝奇的分析機 巴貝奇出生於1791年,是倫敦一位富有銀行家的兒子。在就讀劍橋大學三一學院時,他的早年學長︐偉大的牛頓︐,其輝煌的學術成就產生一些後遺症,導致英國的數學水平落後於歐洲大陸,原因是他的微積分點運算符號晦澀難懂。巴貝奇曾和好友們組織社團,提倡使用萊布尼茲簡明易學的微積分符號。 他在1822年寫公開信給皇家學會會長戴維,建議政府應支持他開發差分機,以因應大航海時代和工業革命大量的計算製表需求。所以從1823年起,英國政府開始長期提供經費製造「差分機」。 差分機是使用機械裝置(主要是齒輪和軸承),來進行對數、三角函數計算,甚至可以求得微分方程的近似解。 之所以叫做「差分」,是因為它可以將複雜的函數計算,簡化為大量的加、減計算,由機器來執行。 圖1-4-1.巴貝奇的差分機 巴貝奇的差分機除了計算功能之外,還預期可將計算結果列表輸出,如此便可大幅減少因人工抄寫造成的製表錯誤。 但差分機的機械困難度,遠超過事先所估計,巴貝奇畫了幾百張設計圖,始終沒有正式產品做出來。 更糟的是,到了1834年,巴貝奇居然向英國政府要求,希望增加撥款,讓他建造功能更強大的「分析機」。自此,政府信心喪失殆盡,決定中止撥款。巴貝奇接下來終其一生,只能運用自己的財力,來支應分析機的設計和製造。 分析機,其設計是更接近後來的計算機,它採用雅卡爾織布機的概念,不但使用卡片輸入,而且不同的卡片輸入可以做不同的計算,可說是一部具廣泛功能的機器,但複雜度更甚於差分機,當然,最終還是沒有製造出來。 巴貝奇傾盡家財、耗盡心力,終究一無所獲。他晚年時,在科學界影響力日漸式微,甚至被視為與現實脫節的奇怪老人。   圖1-4-2.巴貝奇的分析機

計算機在歐洲-4 Read More »

計算機在歐洲-3

1-3.雅卡爾織布機 早期織布機的操作方式,是靠人工用鉤子挑起選定的直向經紗,再用桿子把橫向的緯紗推到它下面,來進行編織圖案的動作。 1725年法國工人魯修為便於重複編織圖樣,在織布機套上穿孔紙帶;他的夥伴則在1726年改良設計,將紙帶換成相互串連的穿孔卡片。 以此機器為基礎,1801年法國人雅卡爾發明提花織布機。這種新型織布機,是利用卡片中所設定孔洞的位置排列,來決定所須啟動的鉤子和推動的桿子。 這部織布機變更連串的卡片來編織不同圖案時,無需更動機械設計,這是可程式化機器的里程碑。 圖1-3-1.雅卡爾織布機的運作 圖1-3-2.利用雅卡爾織布機所編織出的雅卡爾本人肖像

計算機在歐洲-3 Read More »

計算機在歐洲-2

1-2.萊布尼茲計算機 1671年,和牛頓幾乎同時發明微積分的德國數學家萊布尼茲,在出使法國之後,請巴黎機械專家協助,在1674年設計一台更完整的機械計算機,但始終沒有實用化。 他設計的這種新型機器,由兩個部份組成:第一部份類似加法器;第二部份屬於乘法器,多使用了兩排齒輪(被乘數輪與乘數輪)。 圖1-2.萊布尼茲乘法機

計算機在歐洲-2 Read More »

Shopping Cart