您的瀏覽器不支援JavaScript功能,若網頁功能無法正常使用時,請開啟瀏覽器JavaScript狀態
:::

女性科學家專欄 #013

葛麗絲·霍普

將「0與1」翻譯成人類語言的電腦天后與海軍准將

如果你曾經寫過任何一行電腦程式,或是享受過現代軟體帶來的便利,那你絕對要感謝葛麗絲·霍普(Grace Hopper,1906-1992)。在電腦還是一台佔滿整個房間、只能透過打孔卡片輸入「0與1」機器碼的年代,她大膽地提出了一個當時被認為是天方夜譚的想法:為什麼我們不能用接近人類語言的英文來寫程式,再讓電腦自己翻譯成機器碼呢?

這個瘋狂的想法,最終催生了世界上第一個編譯器(Compiler),徹底改變了人類與電腦溝通的方式,也讓她成為了現代計算機科學無可爭議的先驅。

從數學博士到海軍電腦專家

葛麗絲從小就充滿好奇心,七歲時為了弄懂鬧鐘的原理,一口氣拆了家裡七個鬧鐘。她後來取得了耶魯大學的數學博士學位。第二次世界大戰爆發後,她毅然決然地加入美國海軍,被分派到哈佛大學的計算計畫,負責為當時最先進的機電式電腦「馬克一號(Mark I)」編寫程式,用於計算火砲彈道。

戰後,她繼續留在電腦領域。她堅信電腦不應該只是科學家專屬的昂貴計算機,而應該能被應用於商業與大眾領域。為此,她主導開發了世界上最早的商用程式語言之一——COBOL(通用商業導向語言),讓非理工背景的商業人員也能輕鬆編寫程式。

葛麗絲·霍普身穿海軍軍服的肖像
葛麗絲·霍普(Grace Hopper)。她不僅是傑出的電腦科學家,更在美國海軍服役長達 40 多年,最終晉升為海軍准將。

抓出史上第一隻「Bug」

在軟體工程中,我們常把程式錯誤稱為「Bug」(蟲子),而排除錯誤的過程稱為「Debug」(除蟲)。這個詞彙的普及,正是來自葛麗絲·霍普的經典軼事。

1947 年,她的團隊在操作「馬克二號(Mark II)」電腦時,發現機器發生了故障。經過排查,他們在繼電器的接點之間,發現了一隻被電死的真實飛蛾。團隊將這隻飛蛾用膠帶貼在日誌本上,並幽默地寫下:「這是第一個發現蟲子(Bug)的真實案例。」從此,Debug 成為了全世界程式設計師的日常用語。

「停在港口的船很安全,但那不是造船的目的。大膽航向未知吧!」
(A ship in port is safe, but that's not what ships are built for.) —— 葛麗絲·霍普
關於葛麗絲·霍普的常見問答
Q:什麼是「編譯器(Compiler)」,為什麼它這麼重要?
A:電腦的 CPU 只能看懂 0 和 1(機器碼)。在編譯器發明前,工程師必須手動輸入極度複雜的數字代碼。葛麗絲發明的編譯器,就像是一個「翻譯官」,讓人們可以用接近英文的語法(如 IF, THEN, ADD)寫程式,編譯器會自動將其翻譯成機器碼。這讓寫程式的速度與普及率有了爆炸性的成長。
Q:為什麼她被尊稱為「COBOL 之母」?
A:COBOL 是一種專為商業數據處理設計的程式語言,其最大的特色就是語法非常接近日常英語。葛麗絲是該語言開發委員會的核心顧問與推動者,她的理念直接塑造了 COBOL 的樣貌。直到今天,全球仍有大量的金融與銀行系統在底層運行著 COBOL 程式。
Q:她在美國海軍的地位如何?
A:她對海軍的資訊化有著不可磨滅的貢獻。她曾多次退役又被海軍重新徵召,直到 79 歲才正式以「海軍准將(Rear Admiral)」的軍階退役,是當時美國海軍中年紀最大的現役軍官。美國海軍甚至將一艘導彈驅逐艦命名為「霍普號(USS Hopper)」來紀念她。