1815 年,阿達·洛芙萊斯出生在倫敦的一個貴族家庭中。在我們之前所介紹的數(shù)學(xué)家中,有不少同樣出自貴族家庭。不過,帶有一些傳奇色彩的是,阿達的父親是一位“大名人”—英國19 世紀(jì)初期杰出的浪漫主義詩人拜倫。
有趣的是,阿達·洛芙萊斯并沒有活在“拜倫女兒”的“陰影”之下,相較于詩歌,她對數(shù)學(xué)的興趣更大,在數(shù)學(xué)、編程、早期計算機研究領(lǐng)域,她開創(chuàng)了屬于她自己的自由天地。
阿達年幼時與母親安妮貝拉一起生活。安妮貝拉是一名業(yè)余數(shù)學(xué)愛好者,小女孩阿達在母親的影響下,開始走進數(shù)學(xué)這座大花園。
也許,阿達的身體里一直活躍著她父親作為浪漫詩人的遺傳因子。在給母親的一封信中,阿達這樣寫道:“假如你不能給我詩,難道不能給我詩一樣的科學(xué)?”
幾乎每個人小時候都會對自然科學(xué)有無限的幻想,12 歲的阿達也一樣。她曾經(jīng)幻想過能像花仙子、小精靈一樣自由地飛翔,因此她對機翼產(chǎn)生了無限的興趣。阿達仔細觀察了鳥類翅膀的結(jié)構(gòu),嘗試確定機翼和機體之間的正確比例,選取各種可能用到的材料,甚至還專門寫了一本《飛翔學(xué)》來闡述她的構(gòu)想。
19 世紀(jì)30 年代中期,阿達結(jié)識了數(shù)學(xué)家查爾斯·巴貝奇,這位學(xué)者曾是劍橋大學(xué)盧卡斯數(shù)學(xué)講座教授。
在當(dāng)時,“劍橋大學(xué)盧卡斯數(shù)學(xué)講座教授”相當(dāng)于數(shù)學(xué)界的“武林盟主”。要知道,之前坐在這個位子上的人可是牛頓。
巴貝奇沒有牛頓那么聞名遐邇的原因,在于他雖然設(shè)計了人類歷史上第一臺計算機,但最終并沒有造出來。
后來巴貝奇終于做出了一部分機器模型,并將其稱為“差分機”,這也是后世計算機的前身。他舉辦宴會,向世人宣告,此機器將對未來有著相當(dāng)重要的影響,可當(dāng)時的人們并沒有意識到“差分機”的重要性。
只有17 歲的阿達·洛芙萊斯,在巴貝奇示范了這個機器如何使用后,她就明白了—不僅明白這個機器是用來干嗎的,她甚至還“預(yù)言”了這個機器在未來會怎么樣。在此之后,巴貝奇對于“差分機”的種種改進,都有阿達的幫助。
后來,阿達為了擴大“差分機”的影響,用了一年時間,將巴貝奇的相關(guān)演講和談話由法文翻譯成英文,將245 頁的原稿翻譯成542 頁的著作,而那多出的200 多頁,則是阿達自己寫的。也正是在這本書中,阿達“開天辟地”,編出了人類歷史上第一個計算機程序。
要知道,到了21 世紀(jì),英國團隊打破伯努利數(shù)世界紀(jì)錄,使用的還是阿達當(dāng)時在書中寫下的伯努利數(shù)計算程序!
阿達曾經(jīng)說過:“就像織布機可以織出花葉的圖案一樣,‘差分機’可以織出代數(shù)的圖案?!卑⑦_用她那充滿預(yù)見性的雙眼,看到了巴貝奇在當(dāng)時還未看到的圖景。她認為包括“差分機”在內(nèi)的分析機不僅僅是算數(shù)的輔助工具,不僅僅能用于數(shù)學(xué)領(lǐng)域,在數(shù)學(xué)語言的邏輯下,音樂、圖像等,都能用數(shù)字表達出來。這些設(shè)想比圖靈設(shè)計出并投入使用的計算機早了整整一個世紀(jì)。
1980 年12 月10 日,美國國防部開發(fā)了一種新的高級計算機編程語言—Ada, 以紀(jì)念阿達·洛芙萊斯;在微軟的Windows 產(chǎn)品里,也可以找到阿達的全息圖標(biāo)簽;倫敦非盈利組織設(shè)立了“阿達·洛芙萊斯日”,定于每年10 月的第二個星期二……
在當(dāng)時,人們對女性存在不少偏見。許多人認為女性生育會影響智商。而阿達20 歲結(jié)婚,隨后生育了3 個孩子,仍然在數(shù)學(xué)、科學(xué)等領(lǐng)域閃耀著智慧的光芒。被譽為“數(shù)字女王”的阿達·洛芙萊斯在36 歲時因病去世,一位智慧的數(shù)學(xué)家的故事在此畫下了句號。但她勇往直前、不畏艱難的精神,一直引領(lǐng)著一批又一批的后人自由地奔向自己熱愛的領(lǐng)域,不被標(biāo)簽定義,不為自己設(shè)限,活成自己。
阿達是世界上的第一位程序員,她在計算機領(lǐng)域投入了極大的精力,為計算機的發(fā)展做出了巨大貢獻。
你對計算機了解多少呢?一起來看看計算機的語言—二進制吧!
第一個提出二進制計數(shù)法的人是德國數(shù)學(xué)家萊布尼茨,在這一計數(shù)法中,只有0 和1 兩個數(shù)字。
如何將我們熟悉的十進制的數(shù)轉(zhuǎn)化為二進制呢?以150 這個數(shù)為例。
150 對應(yīng)的二進制數(shù)是10010110。
這里還有幾個數(shù),你能寫出對應(yīng)的二進制數(shù)嗎?
68 ( )
99 ( )
201( )