【Sci-Lady系列】電子世界的兩位先行者:愛妲與海蒂(上)

分享至

■ 愛妲(Ada Lovelace) 與海蒂(Hedy Lamarr)年代相差一世紀,但都是電子科技史上的傳奇人物。前者是詩人拜倫之女,日後並成為伯爵夫人,在手稿中寫出世界上第一份電腦程式;後者為輟學的美艷好萊塢影星,竟意外發明了手機擴頻相關技術。

Ada_Lovelace
Ada Lovelace,精通義大利文,並慧眼獨具地贊助最早期的電腦研發。

?
撰文 ∣ 金木水

  提起女科學家,人們首先想到的當屬居里夫人,她作為「鐳的母親」在十年之內兩度摘得諾貝爾獎的桂冠。在居里夫人之後,諾貝爾物理、化學、生物的得獎者名冊中,女性的身影逐漸多起來。2009年的諾貝爾獎頒獎儀式上,人們欣喜地看到一共有五位女性的諾貝爾獎得主,可謂巾幗不讓鬚眉,在這幾個科學領域裏,傑出女性已經不能再用「鳳毛麟角」來形容了。

  其實,與人們以往普遍認為的基礎科學領域是「男性主宰的地盤」相比,電腦、電子通信等工程領域才是真正的「男人世界」。在過去的一百多年間,資訊科技飛速發展,無數新發明走進人類的世界,歷史上第一份有線電報,第一份無線電報,第一部電話,第一個電晶體,第一部電子電腦,第一台電視,第一部手機,第一個互聯網,第一封電子郵件甚至第一個滑鼠,第一個電腦遊戲……他們的發明者:摩斯(Samuel Finley Breese Morse)、馬可尼(Guglielmo Marconi)、貝爾(Alexander Graham Bell)等等,無一例外都是男性。儘管如此,我們卻不能忽略兩位女科學家,一位是寫出了世界上第一個電腦程式的愛妲‧勒芙蕾絲(Ada Lovelace),另一位是手機擴頻技術之母海蒂‧拉瑪(Hedy Lamarr,原名Hedwig Eva Maria Kiesler)。

  愛妲與海蒂·拉瑪一個生在19世紀,一個生在20世紀,時代雖異,命運卻有一些相似之處。

?

業餘科學愛好者

  愛妲和海蒂雖然被後人稱為是女科學家,但是他們實際上最多只能稱作是業餘科學愛好者,或許她們自己也從來沒有預想過自己的「業餘作品」能夠永載史冊。

  愛妲1815年生於英國倫敦,她的父親是大名鼎鼎浪漫主義詩人拜倫。不過,她在出生5星期後就被這位風流才子的父親拋棄,一直跟隨母親生活。愛妲的母親就是一位數學家,影響所及,愛妲也在學校裏學習過數學。在19歲的時候,她嫁給了勒芙蕾絲伯爵(William King-Noel, 1st Earl of Lovelace),成了一位家庭主婦。

  相比於愛妲,海蒂·拉瑪小姐的命運更富有傳奇色彩,她一生的職業是一位好萊塢著名女演員,與科學「八竿子打不著」。1914年她出生於音樂之都維也納,母親是一位鋼琴家,父親是一位銀行家。但海蒂·拉瑪既沒有繼承母親的鋼琴事業,也沒有繼承父親的產業,甚至放棄了大學裏學習的通信專業,孤身一人到柏林學習電影表演。在18歲時,她做了一件瘋狂的事情,此舉讓她聞名於電影界。她擔綱了捷克斯洛伐克電影《神魂顛倒》的女主角,在電影中,海蒂全身裸體入鏡,引起了轟動。電影上映不久,就真的有觀眾為這部電影「神魂顛倒」,一位富商弗裏茨·曼德爾(Fritz Mandl)深深為海蒂所吸引,不惜千金追求到了海蒂。然而,這只是她一生中六次婚姻中的第一次。在1937年,海蒂與曼德爾不辭而別,在米高梅三巨頭之一路易·梅耶的引薦下,輾轉到了好萊塢,在此後數十年,海蒂憑藉其美貌闖蕩美國影壇,與眾多頂級影星合作。不過遺憾的是,吸引人們的只是海蒂漂亮的外表,而不是她的演技。海蒂一直沒有留下經典的形象,也沒有獲得任何獎項。

?

程式之母

  愛妲和海蒂的成就都不是自己獨立完成的,他們人生中偶然間遇到的幾位專家才使得他們原本的生活圈與科學有了交集。提到愛妲一定要提到的另一個人是英國數學家巴貝奇(Charles Babbage),她的工作構成了巴貝奇分析機計畫的一部分。

  在今天,如果我們希望計算一下sin(25),ln(15)一樣的函數,只需要輕鬆按幾下計算器按鍵,是一件再容易不過的事情,可是在沒有電腦的年代,各種函數計算都離不開《數學用表》的幫助,一個函數的數值需要在表上一頁一頁的查詢。為此,早在18世紀末,法蘭西科學院就編起了一套完整的《數學用表》。

Mathematical table

  《數學用表》這一套書可以稱的上是人類歷史上最難編的書之一,編寫隊伍中首先要有一些數學家搞清楚需要計算的數學公式是什麼,然後需要另外一些數學家把這些數學公式轉換成加減乘除計算的簡單形式,比如按照泰勒級數,聰明的數學家會把各種沒辦法直接計算的函數轉換成無限個次方相加,如果需要的結果精確度越高,x的個數就越多。

  然後這些繁重計算任務會分配給那成百個「計算員」,這些計算員每天的工作就是重複的計算再計算,比如第一個計算員負責從x=1.674451算到x=1.674459,第二個計算員從x=1.674460算到x=1.674469,日復一日,這些每天一看到數字腦子都變大的「數字工人」難免常常出差錯,效率變慢,所以最後儘管花費了大量時間、人力、物力,得出的數表中還是錯誤百出。巴貝奇檢查了數表中天文數表部分以後,發現幾乎每一頁就有一個錯誤,於是萌生了一個大膽的想法,為何不用機器來代替人呢?

  在當時,能夠進行加減簡單計算的機器已經出現了,這種機械式電腦上有各種大小不同的齒輪,通過旋轉來完成運算,比如代表個位的小齒輪旋轉十個格,代表十位的大齒輪就會轉一個格,表示進位。不過當時這種機器還沒有辦法直接計算一個像p(x) = 2x2 ? 3x + 2一樣的多項式。巴貝奇想到了利用牛頓發明的差分法來製造一台機械電腦。

Charles Babbage_01
表格來源:wiki

?  在左圖表格裏,第二列表示p(0), p(1), p(2), p(3), p(4)的數值,第三列是第二列相鄰數值的差值(1-2=-1;4-1=3),第四列又是第三列相鄰數值的差值,可以發現第四列都是一樣的。其實任何一個多項式這樣「差分」下去,最後得到的數字都是它的最高次數。以上的結果是從左到右得到的,我們可以反過來,從右到左一步步加減,p(5), p(6)……都可以算出來(比如4+11=15;15+22=37,p(5)就是37)。巴貝奇經過十年的努力,用機器上齒輪自動完成了這項工作,發明了一台可以計算函數值的差分機,他的這部機器可以輕鬆的計算數學用表上,當時需花費幾個小時人力才能完成的計算,而且還可以達到小數點後六位的精確度。

  愛妲18歲的時候,在母親的帶領下,參觀了這部機器,並聆聽了巴貝奇的講解,心中頓時對這部「電腦」產生了濃厚的興趣。

  巴貝奇沒有滿足於差分機的幾項功能,產生了製造像現代的電腦那樣、可以全面地進行各種計算的「分析機」的設想,他希望分析機有幾萬個機械零件,用蒸汽機來驅動。可是這一次巴貝奇卻遇到了巨大的困難,按照當時的製造水準,想讓如此龐大、複雜的一台機器運轉起來是不可能的。機械零件的精度不夠,齒輪卡到一起都是致命問題,隨著一次次的失敗,人們逐漸對巴貝奇失去了信心,英國皇家學會也停止了對他的資助。但在此時,愛妲卻義無反顧地支持巴貝奇。精通義大利文的她幫助巴貝奇翻譯了一份義大利的關於分析機的論文,愛妲不僅翻譯了論文,還添加了很多自己的注釋,正是在這些注釋裡,愛妲寫出了她的程式。

  在注釋中,愛妲提到了伯努利數,伯努利數的公式和n從0到8時伯努利數的數值如下。

Charles Babbage_02

??  你或許學過數學,尚且對於這個公式感到無所適從。對機械齒輪而言更是難懂,它們無法自動理解這個算式。類似於之前牛頓的差分法,愛妲需要設計一個運算方法教會分析機怎樣一步一步的計算。巴貝奇的分析機是歷史上首次對製造真正意義上的電腦的嘗試,而愛妲則為這部想像中的電腦編寫了第一個軟體程式。後來,愛妲還嘗試著為這部機器編寫了解決其他問題的一些程式,更令人驚奇的是,她在當時就預言未來電腦可以用來顯示和編輯音樂、圖片。

ada in C language
Ada當時的程式如果用現代的C語言來寫所得到的代碼。

?

本文未完,接〈電子世界的兩位先行者:愛妲與海蒂(下)

?

作者簡介

一位大學電子工程專業學生,熱愛科普寫作,喜歡與大家分享科學的快樂,探索科學的世界。

?

責任編輯:MissZoe

(Visited 39 times, 1 visits today)

分享至
views

One thought on “【Sci-Lady系列】電子世界的兩位先行者:愛妲與海蒂(上)

  • 2010 年 07 月 21 日 at 10:12:58
    Permalink

    這是CASE PRESS 建站以來,第一位境外投稿作者,特別標示一下。我們歡迎其他國家的華語寫作者 [以中文] 投稿喔!

    Reply

發佈回覆給「MissZoe」的留言 取消回覆

發佈留言必須填寫的電子郵件地址不會公開。 必填欄位標示為 *