首頁 > AI資訊 > 最新資訊 > 百歲匯編語言之母逝世!71歲時(shí)她還在和兒子合寫神經(jīng)網(wǎng)絡(luò)論文

百歲匯編語言之母逝世!71歲時(shí)她還在和兒子合寫神經(jīng)網(wǎng)絡(luò)論文

新火種    2023-09-08

編輯:Aeneas 好困

【新智元導(dǎo)讀】她,不僅編寫了第一個(gè)匯編語言,而且還完成了史上最早的機(jī)器翻譯奠基工作。


2022年9月,匯編語言之母Kathleen Booth,在加拿大去世,享年100歲。



匯編語言之母



Kathleen Hylda Valerie Booth教授是英國(guó)早期的計(jì)算機(jī)先驅(qū)之一。



想象一下,必須通過重新布線來對(duì)計(jì)算機(jī)進(jìn)行編程。是不是很不可思議?



1951年對(duì)ENIAC進(jìn)行編程



在1940年代中期,第一臺(tái)通用電子計(jì)算機(jī)就是以這種方式工作的。



像ENIAC這樣的計(jì)算機(jī),最初并沒有用于代碼的內(nèi)部存儲(chǔ)。如果我們想要用它編程,就要操縱數(shù)千個(gè)開關(guān)和電纜,而這些開關(guān)和電纜所在的位置,就是程序。



所有帶旋轉(zhuǎn)開關(guān)的單元都是需要大量編程的地方



此時(shí)的編程,必須手動(dòng)更改數(shù)千根電纜和開關(guān),或者在卡片上打孔,然后將卡片送入計(jì)算機(jī),這可能需要數(shù)天時(shí)間,而且極易出錯(cuò)。



在Kathleen Booth開始研究計(jì)算機(jī)的那個(gè)年代,有那么一小群人,開始產(chǎn)生了將程序存儲(chǔ)在計(jì)算機(jī)內(nèi)部的想法。而她也是最早研究「軟件」這一新概念的人之一,她從中看到了需求,發(fā)明了匯編語言,使計(jì)算機(jī)編程更加人性化。



1922年7月9日,Kathleen Hylda Valerie Britten出生于英國(guó)伍斯特郡。



二戰(zhàn)期間,她就讀于倫敦大學(xué)皇家霍洛威學(xué)院,并于1944年獲得數(shù)學(xué)學(xué)士學(xué)位。



畢業(yè)后,她成為一名皇家飛機(jī)研究所的研究員。兩年后,她入職倫敦大學(xué)伯貝克學(xué)院(Birkbeck College),先后擔(dān)任研究助理、講師、研究員。



她還曾在英國(guó)橡膠生產(chǎn)商研究協(xié)會(huì)(BRPRA)工作,就是在那里,她遇到了未來的丈夫——數(shù)學(xué)家、物理學(xué)家Andrew Donald Booth。



Andrew Booth在與X射線晶體學(xué)家JD Bernal 教授(伯納爾球的發(fā)明者)合作期間,使用X射線衍射數(shù)據(jù)來研究晶體結(jié)構(gòu)。他發(fā)現(xiàn)手動(dòng)計(jì)算非常繁瑣,于是造了一臺(tái)模擬計(jì)算機(jī),來自動(dòng)化部分步驟。



1946年,他在伯貝克擔(dān)任納菲爾德研究員。但由于學(xué)院沒有空間,而且由于BRPRA為其提供資金,所以他的工作是在BRPRA的設(shè)施上完成的。



就在那時(shí),他遇到了Kathleen。同年,Kathleen和Andrew在伯貝克學(xué)院合作發(fā)明了一臺(tái)早期的數(shù)字計(jì)算機(jī)——自動(dòng)中繼計(jì)算機(jī)(ARC)。ARC使用紙帶進(jìn)行輸入,實(shí)際上是一臺(tái)用作傅立葉合成器的專用計(jì)算機(jī)。



Kathleen、Xenia Sweeting和Andrew于1946年在ARC上工作



Andrew Booth設(shè)計(jì)了ARC,而Kathleen Britten和助理Xenia Sweeting構(gòu)建了硬件。



在此期間,他們一同創(chuàng)建了如今的伯貝克計(jì)算機(jī)科學(xué)與信息系統(tǒng)系。



1945年,約翰·馮·諾依曼(John von Neumann)撰寫了一份名為「EDVAC報(bào)告初稿」的文件,在這份文件中,他描述了后來被稱為計(jì)算機(jī)的馮·諾依曼架構(gòu)。



在這個(gè)架構(gòu)中,他定義了計(jì)算機(jī)的各個(gè)部分,特別是存儲(chǔ)在計(jì)算機(jī)內(nèi)存中的程序。出于這個(gè)原因,它也被稱為存儲(chǔ)程序計(jì)算機(jī)。



在經(jīng)典的馮·諾依曼計(jì)算機(jī)架構(gòu)中,地址空間大部分用于指向內(nèi)存,其余部分用于指向外部設(shè)備:內(nèi)存并不關(guān)心里面存儲(chǔ)的是什么



1947年,Andrew和Kathleen在普林斯頓大學(xué)與馮諾依曼和IAS機(jī)器合作時(shí),編寫了一個(gè)程序,用于在電子計(jì)算機(jī)上實(shí)現(xiàn)翻譯詞典,前提是提供必要的存儲(chǔ)容量。這是史上最早的機(jī)器翻譯奠基工作。



在這一年,Bernal幫助Kathleen和Andrew從洛克菲勒基金會(huì)申請(qǐng)到了訪問普林斯頓高等研究院的資金。在此期間,Andrew和Kathleen與馮諾依曼一起共事了6個(gè)月。



根據(jù)Andrew的說法,在訪問期間,只有Bernal的朋友約翰·馮·諾伊曼在任何時(shí)間都會(huì)接待他們。



一個(gè)簡(jiǎn)化的內(nèi)存管理系統(tǒng)——CPU中的程序計(jì)數(shù)器不再直接指向內(nèi)存,而是產(chǎn)生一個(gè)進(jìn)入MMU的虛擬地址,重定位常量添加到虛擬地址,以在內(nèi)存中創(chuàng)建物理地址



就是這次訪問,讓他們第一次聽說了馮諾依曼架構(gòu)。受到啟發(fā),他們重新設(shè)計(jì)了ARC,僅用了2個(gè)月就設(shè)計(jì)了機(jī)器的繼電器部分,并且提出了關(guān)于ARC2的構(gòu)想。



還是在1947年,Kathleen和他還寫了兩份關(guān)于它的報(bào)告《通用電子數(shù)字計(jì)算機(jī)設(shè)計(jì)中的一般考慮因素》和《ARC編碼》。其中第一份報(bào)告廣為流傳。在其中,他們?cè)敿?xì)介紹了馮諾依曼架構(gòu)機(jī)器,并介紹了內(nèi)存的不同選項(xiàng)。



此外,這份報(bào)告還描述了她發(fā)明「匯編語言」的前身,她在報(bào)告中將其命名為Contracted Notation。這是對(duì)計(jì)算機(jī)編程進(jìn)行抽象思考的第一步,無需編寫顯式的1和0或機(jī)器代碼指令。



在這份報(bào)告中,Kathleen的編程能力大放異彩。并且,她設(shè)想了同步與異步操作的可能性,這可是在1947年!在此之后,我們唯一能夠找到的異步描述來自1980年代中期。



同步與異步操作將允許程序中的多條指令并行執(zhí)行。因此,在執(zhí)行下一條指令之前,程序不會(huì)被阻止等待當(dāng)前指令的結(jié)果。這將有效地改善程序執(zhí)行時(shí)間,即處理所有指令所需的時(shí)間。



摘自《通用電子數(shù)字計(jì)算機(jī)設(shè)計(jì)中的一般考慮因素》



第二份報(bào)告「Coding For ARC」,于1947年9月出版。在這份報(bào)告里,Kathleen首次詳細(xì)介紹了ARC2「匯編語言」。



在該報(bào)告中,Kathleen還解釋了orders(現(xiàn)在稱為指令instructions)是如何由加載到某種存儲(chǔ)中的0和1表示的。



通過匯編語言,我們不必再記住機(jī)器代碼10010110作為指令,只需記住并輸入?yún)R編語言助記符MOV作為指令。



不過,目前已無法找到這份報(bào)告的數(shù)字副本。



在1948年,Andrew和Kathleen將研究方向轉(zhuǎn)向簡(jiǎn)單電子計(jì)算機(jī)(SEC),然后是通用電子X射線計(jì)算機(jī)或APE(X)C。現(xiàn)在,我們可以在MESS模擬器中試用APE(X)C 。



Hollerith電子計(jì)算機(jī)(HEC)是世界上現(xiàn)存最早的電子計(jì)算機(jī)之一



他們最著名的機(jī)器APEC(通用電子計(jì)算機(jī))是在1949年設(shè)計(jì)出來的。



1951年,BTM使用其硬件電路作為HEC1計(jì)算機(jī)設(shè)計(jì)的基礎(chǔ),這種計(jì)算機(jī)在1950年代末直接成為最暢銷的英國(guó)計(jì)算機(jī),安裝了近100臺(tái)。



在下面這個(gè)視頻中,可以看到關(guān)于HEC1的介紹。



Andrew發(fā)明了一種并行乘法器算法,該算法仍然構(gòu)成現(xiàn)代計(jì)算機(jī)芯片(布斯乘法器)中乘法電路的基礎(chǔ)。



他們還一起發(fā)明了旋轉(zhuǎn)存儲(chǔ)設(shè)備。在1940年代后期,他們?cè)噲D制造可工作的光盤,但失敗了,不過,他們成功地建造了世界上第一個(gè)磁鼓存儲(chǔ)器,該存儲(chǔ)在1950年代被廣泛用于主存儲(chǔ)器和后備存儲(chǔ)。



在磁鼓存儲(chǔ)器中,信息存儲(chǔ)在滾筒上的可磁化條上,數(shù)字信息存儲(chǔ)為二進(jìn)制磁性圖案



1950年,Kathleen和Andrew結(jié)婚,就在同年,Kathleen從倫敦大學(xué)獲得了應(yīng)用數(shù)學(xué)博士學(xué)位。



為了爭(zhēng)取更多資金,兩夫婦再次前往洛克菲勒基金會(huì)?;饡?huì)提出的條件:必須讓APE(C)X既可以用人類語言,也可以用數(shù)學(xué)語言。這也就是我們所熟知的自然語言處理。



他們做到了,在1955年11月,他們展示了機(jī)器翻譯的過程。



他們的目標(biāo)是實(shí)現(xiàn)準(zhǔn)確的技術(shù)翻譯,而不是追求文學(xué)質(zhì)量。



他們?cè)诓惪藢W(xué)院時(shí),與學(xué)生一起做了很多NLP的工作,同時(shí)在1965年至1972年間,他們?yōu)榧幽么髧?guó)家研究委員會(huì)從事英法翻譯工作。



Kathleen在1958年出版的《自動(dòng)數(shù)字計(jì)算器編程》,可能是第一本由女性撰寫的關(guān)于編程的書。



在這本書中,她介紹了和同事在1965年之前一直在研究的一些算法,比如單詞替換、詞干和詞尾處理。



她的另一個(gè)開創(chuàng)性工作是通過編程模擬神經(jīng)網(wǎng)絡(luò),來識(shí)別動(dòng)物。這距離史上第一次在計(jì)算機(jī)上運(yùn)行神經(jīng)網(wǎng)絡(luò),僅僅過了四年。



Booth一家于1962年離開伯貝克學(xué)院,移居加拿大,先后在薩斯喀徹溫大學(xué)、湖首大學(xué)工作。



她于 1978 年從湖首大學(xué)退休,但可以看到,在1993年、她已經(jīng)71歲高齡時(shí),還發(fā)表了和兒子Ian JM Booth博士共同撰寫的論文《使用神經(jīng)網(wǎng)絡(luò)識(shí)別海洋哺乳動(dòng)物》。



Kathleen Booth于2022年9月29日去世。伯貝克學(xué)院發(fā)文悼念。



David Wheeler:1985年計(jì)算機(jī)先鋒獎(jiǎng)得主



不過,相比于這位來自英國(guó)的女性,更加廣為人知的是另一位男性——David Wheeler。



為此,美國(guó)IEEE計(jì)算機(jī)協(xié)會(huì)還在1985年為他頒發(fā)了計(jì)算機(jī)先鋒獎(jiǎng)。



當(dāng)時(shí),作為與Maurice Wilkes一起研究劍橋大學(xué)Edsac(電子延遲存儲(chǔ)自動(dòng)計(jì)算機(jī))的團(tuán)隊(duì)成員,David Wheeler負(fù)責(zé)為計(jì)算機(jī)提供指令的系統(tǒng)。



Wheeler開發(fā)的「初始指令」(initial orders)讓Edsac的指令可以用一種簡(jiǎn)單的語言編寫,而不再是「人肉輸入」二進(jìn)制數(shù)字。



此外,他還開發(fā)了「Wheeler Jump」,允許程序?qū)⒖刂茩?quán)傳遞給子程序,也就是用Basic寫過程序的人都知道的「goto」語句的前身。



David John Wheeler于1927年出生在伯明翰。1945年,他獲得了劍橋大學(xué)三一學(xué)院的獎(jiǎng)學(xué)金,在那里他學(xué)習(xí)數(shù)學(xué),并于1948年畢業(yè)。



在此期間,Maurice Wilkes在重新開放的數(shù)學(xué)實(shí)驗(yàn)室工作,從事一個(gè)名為Edsac的存儲(chǔ)程序電子計(jì)算機(jī)的建造項(xiàng)目。



Edsac的第一個(gè)程序于1949年3月在Edsac上運(yùn)行,其中就包括了Wheeler開發(fā)的「初始命令」,一個(gè)可以將簡(jiǎn)單的命令翻譯成計(jì)算機(jī)所需的二進(jìn)制指令的程序。這使得Edsac可以由非專業(yè)人員進(jìn)行編程,并標(biāo)志著編程語言的發(fā)展邁出了第一步。



為Edsac編寫程序的經(jīng)驗(yàn)使Wheeler和他的同事Maurice Wilkes和Stanley Gill在1951年出版了第一本針對(duì)程序員的書「The Preparation of Programs for an Electronic Digital Computer」,同年,Wheeler獲得了實(shí)驗(yàn)室授予的第一個(gè)博士學(xué)位。



1955年,應(yīng)用數(shù)學(xué)的研究學(xué)生Joyce Blackler開始在工作中使用Edsac,并認(rèn)識(shí)了David Wheeler。他們于1957年8月結(jié)婚。



1965年他成為達(dá)爾文學(xué)院的研究員,1966年在加利福尼亞大學(xué)伯克利分校工作,研究如何將在線終端與大型計(jì)算機(jī)連接起來。1968年,他在貝爾實(shí)驗(yàn)室工作了一段時(shí)間。1977年,他成為計(jì)算機(jī)科學(xué)教授。



他在1970年被選為英國(guó)計(jì)算機(jī)學(xué)會(huì)的會(huì)員,1981年成為最早被選為皇家學(xué)會(huì)會(huì)員的計(jì)算機(jī)科學(xué)家之一。



1984:美國(guó)女性離開代碼的那一年



但凡是對(duì)編程歷史有所了解的人,必然聽說過Ada Lovelace和Grace Hopper。她們和其他從業(yè)的女性一起,對(duì)現(xiàn)代編程產(chǎn)生了巨大影響。



但現(xiàn)在,你能叫出名字的「大人物」,無疑是像史蒂夫·喬布斯、比爾·蓋茨和馬克·扎克伯格這樣的男性。



那么,曾經(jīng)的女性都去了哪里?



時(shí)間回到第二次世界大戰(zhàn)期間,當(dāng)時(shí)第一批「程序員」有很多都是女性,如計(jì)算公司(CompInc.)的創(chuàng)始人Elsie Shutt和創(chuàng)造了第一個(gè)編譯器的Grace Hopper。



戰(zhàn)爭(zhēng)勝利之后,雖然有越來越多的男性加入,但女性不僅仍然從事著科學(xué)和技術(shù)領(lǐng)域工作,而且攻讀計(jì)算機(jī)科學(xué)學(xué)位的人數(shù)也在不斷增長(zhǎng)。



直到,1984年……



在20世紀(jì)80年代中期,計(jì)算機(jī)開始成為美國(guó)人的家庭用品。



當(dāng)時(shí),計(jì)算機(jī)在市場(chǎng)上的定位主要是面向商業(yè)和游戲的,而這兩類產(chǎn)品的受眾基本上都是男性。



此外,電影院里的電影和電視上的廣告為程序員確立了一個(gè)獨(dú)特的身份:書呆子,年輕男性。



看看這個(gè)玩具反斗城的Commodore 64的廣告就知道了。


不難想象,初高中的男孩們顯然會(huì)比同齡的女孩,更容易接觸到電腦。

而這一差距,在他們升入大學(xué)時(shí)便會(huì)顯現(xiàn)出來。

上世紀(jì)70年代,計(jì)算機(jī)科學(xué)的教授普遍認(rèn)為新生是不具備任何計(jì)算機(jī)相關(guān)的經(jīng)驗(yàn)。但隨著個(gè)人電腦在80年代變得越來越普及,教授們也越來越覺得他們的學(xué)生是玩著電腦長(zhǎng)大的。

對(duì)于家里沒有電腦的Patricia Ordóez來說,這無疑是一道難以逾越的鴻溝。

還在上中學(xué)的時(shí)候,Ordóez數(shù)學(xué)成績(jī)極佳。因此,當(dāng)他進(jìn)入約翰霍普金斯大學(xué)時(shí),最初的志愿是攻讀計(jì)算機(jī)科學(xué)或電氣工程專業(yè)。

然而,當(dāng)Ordóez來到第一堂入門課時(shí)才發(fā)現(xiàn),周圍男同學(xué)對(duì)計(jì)算機(jī)的了解都比她要早得多,而自己卻不得不問一些「常識(shí)性問題」。

「有一次,教授在回答完之后,停下來看著我說:『現(xiàn)在你應(yīng)該知道了吧?!弧?/p>

雖然Ordóez在后來也通過了課程,但也獲得了人生中第一個(gè)C。最終,她選擇放棄,主修了外語。

不過,十多年后,她又回到了計(jì)算機(jī)領(lǐng)域,并最終獲得了計(jì)算機(jī)科學(xué)的博士學(xué)位?,F(xiàn)在她是波多黎各大學(xué)的計(jì)算機(jī)科學(xué)助理教授。

參考資料:

https://www.theregister.com/2022/10/29/kathleen_booth_obit/

https://hackaday.com/2018/08/21/kathleen-booth-assembling-early-computers-while-inventing-assembly/

https://www.dcs.bbk.ac.uk/about/history/

https://www.computer.org/profiles/david-wheeler

https://www.codefellows.org/blog/1984-year-women-left-coding/

相關(guān)推薦
免責(zé)聲明
本文所包含的觀點(diǎn)僅代表作者個(gè)人看法,不代表新火種的觀點(diǎn)。在新火種上獲取的所有信息均不應(yīng)被視為投資建議。新火種對(duì)本文可能提及或鏈接的任何項(xiàng)目不表示認(rèn)可。 交易和投資涉及高風(fēng)險(xiǎn),讀者在采取與本文內(nèi)容相關(guān)的任何行動(dòng)之前,請(qǐng)務(wù)必進(jìn)行充分的盡職調(diào)查。最終的決策應(yīng)該基于您自己的獨(dú)立判斷。新火種不對(duì)因依賴本文觀點(diǎn)而產(chǎn)生的任何金錢損失負(fù)任何責(zé)任。

熱門文章