現代計算機的「兩次發明」:萊布尼茨的齒輪計算器與巴貝奇差分機

2020-12-05 21世紀商業評論

和人類演化一樣,現代計算機來自一系列繁複雜亂的歷史進程。用生物學打比方,現代計算機的DNA共生於兩種完全獨立的思想,在過去200年中,隨著經濟和社會環境的變化最終摻雜在一起。

其中,第一個思想來自我們一直以來本能的渴望,渴望創造能像生命體一樣行為的人造物;另一個思想來自對於邏輯學的研究,我們驚奇地發現,邏輯學和數學是一對雙生子。

兩種思想,最終融為一體。

機械造物者

許多發明家和工程師以製造娛樂性的自動機械為時尚。

18世紀末法國發明家雅克.德.沃康松設計製造了一個能消化的機器,「消化鴨子」:給這隻機械鴨子餵食穀物,它看起來會消化並且排洩。

19世紀初,瑞士機械師亨利.梅拉德特製造了一臺自動機械,會畫四幅畫,寫三首詩。

在這個階段,自動機械是在模仿自然,它們是一批人工控制論系統。與此同時,古希臘著名思想家亞里斯多德關於邏輯作為運算的思想引發了一個問題:如何將這樣的過程自動化?

德國的哲學家、數學家萊布尼茨創造了微積分、二進位數字系統等發明。1679年,他夢見了一臺機器,這臺機器用彈珠表達二進位數字,這些彈珠按打孔卡片來移動,操作卡片和彈珠,就可以完成自動化的機械計算。萊布尼茨假設任何計算機器都應該有可操作的移動部件,可以排序和計數。

現代計算機和萊布尼茨想像的非常接近。

電子脈衝就像彈珠,以來回移動表示不同電壓,現代的移位寄存器控制著輸入和輸出以便移動數據,就像是萊布尼茨的打孔卡片。

與此同時在法國,數學家布萊士.帕斯卡和德國天文學家威廉.施卡德一起,製造了第一臺可以使用的機械計算器。經過諸多試驗後,帕斯卡機得以問世,1645年由帕斯卡本人向公眾演示。這是一臺機械計算器,可以加減任意兩個數字,通過5個輪子,各可以輸入0到9的數字。

以今天的標準,這個機器用起來費勁兒,但是在17世紀中葉,當人們需要快速加總很大的數字時它就非常合理了。

萊布尼茨為帕斯卡機加上了乘法和除法運算。1685年,他設計了齒輪計算器,以及「萊布尼茨輪」,這個機器通過特定的設置可以完成計算。這些設置都是靠著齒輪的設計,以及計數輪的齒之間遞增的距離完成的。

萊布尼茨的輪子和帕斯卡的齒輪組之後都變成了「四則運算計算器」的關鍵零件,這是1851年第一臺可以進行多步計算的機械計算器。

這臺機器賣出了數百萬臺,並且在全世界的辦公室裡廣泛使用。實際上,直到20世紀70年代中期電子計算器發明之前,萊布尼茨式的發明還在用於自動計算。

過去數個世紀,用來製造自動機械的技術和關鍵的機械零件如今用來製造機械計算器了,這種轉型預告了20世紀末機器人的發明,而機器人變成了仿人形或仿動物形自動機械的下一階段。

而且,這種轉型有著文化因素,那就是計算機的擬人化:希望計算機器可以有「大腦」一樣的能力,像人一樣的行為,這種觀念之後會在人工智慧研究中再一次出現。

巴貝奇的差分機和帕斯卡、萊布尼茨的計算機器一道,都是另一類自動機器的前身,後者將會與符號邏輯相遇、融合。這是技術和傳統的偉大會合,一個技術史上真正的「奇點」,它從古代亞歷山大裡亞的自動機械出發,轉變成了18世紀末的計算機器。

曾經用來模擬和模仿生命的機器,現在用來「咀嚼」數字,在一個快速變化並將要開始工業化的世界,這些計算機器是必不可少的,它們滿足了高效、零錯誤算數計算的需求。

在這一歷史的交匯時刻,符號邏輯已經因為布爾和弗雷格而得到充分的發展了。符號邏輯和這一類計算機器相遇,假以時日,一類新的技術將會湧現:數字的、電子的、通用的計算機。

兩類技術歷史性的融合,機械和物理的技術、邏輯數學的符號,決定了現代計算機的雙重本性,於是它分離成了硬體和軟體。無論如何,在18世紀末,絕對無法預知計算機的演化會最終走向分離,而當分離發生了,通用計算機不得不被發明了兩次。

巴貝奇的妙想

查爾斯.巴貝奇的工程設計區分了程序和可以執行程序的機器,他是這樣做的第一人。為此,他被推崇為「現代計算機之父」。

查爾斯.巴貝奇,科學管理的先驅者

但他並不是一次就完成了這個創新的設計,而是花費數年忙於各種工作,直到他從紡織業找到了技術解決方案,並且將之應用於自動解決一般數學問題。

巴貝奇於1791年出生在倫敦,此時大不列顛的漢諾瓦王室已經建立了歐洲最為自由民主的制度。民主、產權和法律成了創造空前財富的引擎,在一個新的世界秩序下,在工業革命的開端,它們逐漸成形。

在19世紀初,歷史上第一次,海運、鐵路、國際銀行和貿易已經連接了我們星球上每一塊適宜居住的大陸。根據人類學家伊恩.莫裡斯的分析,工業革命是人類歷史上最重要的事件。

整個世界為之改變,包括我們社會組織的複雜程度、我們建造城市的方法、發動戰爭的手段、我們如何分享和處理信息,以及我們可以獲取和使用的能量,引發工業革命的關鍵技術是蒸汽機。

詹姆斯.瓦特精巧地改進提升了蒸汽機的效率,這一改進於1775年問世,以機械的力量改變了全球經濟。許多歷史學家稱這一時期為「第一次機器革命」,此時機械成了人類社會不可分割的一部分,並永遠改變了社會。

這是巴貝奇生活的時代,他的出生地大英帝國是第一個工業化的國家,也是在經濟上和海軍實力上無可匹敵的帝國,而大英帝國財富的核心是製造業,核心的核心又是紡織業。

巴貝奇對製造一點兒也不陌生。

1832年他出版了一本描述工業生產組織的著作,由此成了名人。書中,他探索了如何最優地組織工業生產,討論了勞動分工、利潤分配和工廠的合理設計等前衛思想。

這是多年來造訪工廠和研究製造過程的結晶,正是這些知識和洞察啟發了巴貝奇設計他的第一臺機械算數機器:差分機一號。

巴貝奇的「差分機」

在算數計算和製造過程之間存在著明顯的共同點。兩者都可以拆分成小的、自給自足的單元,以便單獨處理或批處理。這種「批處理」簡化了整個過程的複雜度,讓過程變得可控。

同時,一個單元處理的輸出是下一個單元的輸入。製造的過程和數學的、邏輯的過程類似,都是一系列的步驟,即算法。而且,製造過程是遞歸的:它們不斷重複自身,於是一個產品的許多備份就全部製造出來了。

質量是製造過程中另一個必不可少的要素,有必要檢查每一個製造的單元都有著最好的產出,因為它們又是下一個生產環節的輸入。

基於以上觀察,巴貝奇推測數字可以用和製造相近的過程來處理,通過算法產出新的數字。每一步計算都應該是算法的一個步驟,並且產出一個特定的數字作為輸出,以便檢查對錯。這樣,計算錯誤作為計算過程的質量的反映就可以最小化了。

巴貝奇還注意到,用於在工廠中推動機器的蒸汽機,也可以用於驅動計算機器。他關於未來的設計是打造一臺自動機器,可以計算數字並且總能提供正確答案,不會出錯。

就像「商品製造」,「計算製造」也應該是機械的,以蒸汽機推動,不受人類錯誤的影響,有能力無限地產出同樣完美的結果。

倫敦天文學會資助了巴貝奇,讓他得以將受到製造業啟發的計算機器製造出來。巴貝奇作為天文學會的成員,熟知帕斯卡和萊布尼茨的計算器,於是開始設計和製造英國的計算機器。

在當時,能夠計算對數和三角函數的機器設計的關鍵問題是除法和乘法,帕斯卡機和它的仿製品都做不到這兩點。為了解決這一問題,巴貝奇利用了微分方程的特性。

這些方程定義了兩個變量之間的關係。讓一個計算的輸出當作下一個計算的輸入,再通過簡單的加法或減法,微分方程就可以實現乘法和除法。使用微分方程和建造差分機一樣偉大。

顯然,遞歸函數以及反覆執行一個運算這一概念(或稱「循環」),與用機械計算有著不可分割的聯繫。控制論和複雜的數學此時融入了計算機器的演化,新的計算機和帕斯卡與萊布尼茨發明的那種簡單、線性的計算機器分道揚鑣了。

據說巴貝奇是個很難合作的人,1831年,他和工程師約瑟夫.克萊蒙特因為製造差分機的成本爭吵鬧翻。此時只製造了一個原型,就是現在展出在倫敦科學博物館的那一個。

巴貝奇堅持改進最初的設計,稱之為差分機二號。這第二臺機器最終在百餘年後的1991年才製造出來,並且真的成功進行了它最初的設計者展望的演算。不過,巴貝奇在計算機萬神殿中的地位並沒有因差分機的失敗而動搖。

1837年,他已經著手設計另一臺革命性的機器,可以進行任何演算。他叫這臺機器為「分析機」,像差分機一樣,分析機也受到了製造業的啟發。

邏輯的嵌入

在研究英格蘭的製造業時,巴貝奇注意到了紡織業的偉大發明。

1801年,法國發明家雅卡爾的提花機使用打孔卡來讓機器自動編制非常複雜的紋樣。機器的機械零件和織物的紋樣一分為二,提花機預示了計算機硬體與軟體的二分法。

一邊是用於執行操作的物理媒介,一邊是作為信息的紋樣,兩者之間是操作的指令集,或者操作的客體。打孔卡可以連在一起,形成更長的紋樣的帶子,作為提花機的輸入來執行。

巴貝奇第一次將打孔卡和紙帶引入了計算領域。

打孔卡在一個世紀後會被計算機先驅重新發明,而附有符號的紙帶則被圖靈利用,定義了現代計算機的數學概念。

有趣的是,巴貝奇設計的分析機如同一臺差分機傾斜著放在另一臺上面。這個樣子就是兩臺差分機互為鏡像放置,一臺的輸出是另一臺的輸入。

這種對應的設計讓它能夠加入邏輯分支表達式,例如「如果A則B」,以及加入循環。運算可以反覆多次,結果可以有邏輯分支,這樣就可以用連接在內部的差分機做進一步處理。

這是一個控制論式的設計,這一創新的、自我指涉的特點,讓分析機做到了「圖靈完備」,也就是說這是一臺可以模擬任何機器的機器。

不幸的是,巴貝奇從來沒有完成這臺他夢想的機器,儘管直到1871年去世之前他還在修補最初的設計。

巴貝奇還沒來得及完成一本手冊以記錄分析機的功能。幸好,1842年義大利數學家、軍事工程師路易吉.梅納布雷亞用法語寫了一篇機器的說明。

一年後,著名英國詩人拜倫男爵的女兒阿達.洛夫萊斯(數學家,電腦程式創始人)把這篇說明翻譯成了英語。在她的翻譯中,還有第一則電腦程式,這讓阿達.洛夫萊斯成了軟體的發明人。

阿達.洛夫萊斯,電腦程式創始人

阿達.洛夫萊斯是拜倫男爵唯一的合法子女。她出生後一個月她的父親就遺棄了她和她母親去義大利旅行,在那個夏天的日內瓦湖畔遇見了珀西.雪萊和瑪麗.雪萊,阿達再也沒見過她父親,8年後,拜倫參加希臘獨立戰爭時死於希臘。

儘管是一個缺乏雙親之愛的多病小孩,阿達卻表現出高超的學習才能,並且對技術有著強烈的好奇心。12歲時,她迷上了飛行,於是開始試驗各種人造翅膀,研究鳥類的解剖,還寫了一本名為《飛行學》的書,在書中她畫下了自己的想法和發現。

1833年,她第一次遇見巴貝奇,一下就迷上了差分機。巴貝奇對她的數學才能印象深刻,稱呼她為「數學女巫」,在她翻譯的麥納波利分析機說明的注釋裡,阿達留下了計算機歷史上最重要的文獻之一。

欽佩於朋友設計的機器的潛能,她寫道:「巴貝奇先生相信通過他的機器,能夠在三分鐘內產出任意兩個20位數的計算結果。」她又演示了如何利用分析機,通過編寫一個可執行的算法,自動計算一系列的伯努利數。這一算法被認為是人類寫出的第一個軟體程序。

分析機和阿達.洛夫萊斯的第一個程序讓歷史學家和玄幻小說作家著迷不已。如果英國財政沒有停止資助巴貝奇的夢想和設計,如今的社會將會是什麼樣子的?分析機是否會把計算時代的到來提前百年?

這當然是架空歷史類作者愛問的問題,他們也確實為此創作了許多部小說、短篇故事和漫畫。不過關於這個我們棲身於分析機之間的宇宙,我們所知有限,現代計算機架構的主要功能要等到近一個世紀後才發明,在這個架構中,軟體和硬體是分離的。

這麼看來,分析機如同一次技術奇點,在一個還沒準備好如何使用它的世界誕生了。如同希臘化時代的一些發明,比如希羅的蒸汽機、依巴谷的安提基特拉機械,巴貝奇的偉大發明超越了他的時代。

需要論證的是,我們是否還未完全理解這種分離的重要性,極有可能還需要數十年才能真正理解,就像是瓦特的蒸汽機,在18世紀末工業革命中開啟了「第一次機器革命」,現代計算機正在通過經濟和社會的數位化轉型進入「第二次機器革命」。

在巴貝奇從差分機到分析機的高明一躍之時,第二次機器革命的種子已經孕育。

伴隨著打孔卡的使用,這種電腦程式的物質實體還將延續到20世紀初。但是隨著計算機工程學的進展,打孔卡過時了,程序明顯變成了「信息的模式」。

隨著符號邏輯變成了計算機語言,「程序」和「數據」都變得完全非物質化了。物質的單元「原子」,變成了信息的單元「比特」。程序與數據從機械讀卡器和卡片變成了純粹非物質的形式,軟體如同笛卡兒的精神實體,超越了硬體,變成了機械的靈魂。

在巴貝奇去世10年後,喬治.布爾發現思維可以通過符號邏輯自動化。他的發現以及弗雷格通過謂詞邏輯所做的擴展,建立了現代計算機語言的基礎。

艾倫·圖靈,英國數學家、邏輯家

最終,圖靈將邏輯和計算機器永遠地結合在了一起。

圖靈機實際上是一臺分析機,處理寫在紙帶上的邏輯符號,處理過程就是執行一系列的規則,執行「程序」。

圖靈機和巴貝奇與洛夫萊斯想像中的機器唯一的不同就在於圖靈機可以不在意它處理的符號形式,這些符號可以是數字、定理或者其他邏輯表達式。這就是計算機軟體。

另一方面,計算機硬體也處於童年、青春期和成年期的變化之中。獨立於巴貝奇,美國發明家赫爾曼.何樂禮在19世紀80年代末也發明了用打孔卡存儲數據的方法。

從19世紀末到20世紀30年代末,許多看似無關的發明創造都參與了定義現代計算機的過程。

這些技術,不論是電動機械還是模擬,在不遠的未來都被很快取代了,更快的、全電子的、數字的計算機使用真空管和複雜的電路設計。巴貝奇設計分析機時不具備的社會經濟條件如今齊備了。

想像中的智慧機器人

到了20世紀30年代,所有即將誕生的計算機革命需要的基礎技術都已經發明出來了,等待著機會在一次大爆炸中融合。

唯一欠缺的只有一個奇點時間,一個火花,欠缺一個事件:富裕社會大量投資金錢和智力來攻堅這些「咀嚼」數字的機器。

本文選編自《人類的終極命運-從舊石器時代到人工智慧的未來》,標題為編者所加,章節略有刪減;喬治.扎卡達基斯著;陳朝譯;中信出版社授權刊載,2017年10月出版。

相關焦點

  • 計算機竟然擁有四千多年的歷史!
    萊布尼茨發明的新型計算機約有1米長,內部安裝了一系列齒輪機構,除了體積較大之外,基本原理繼承於帕斯卡。不過,萊布尼茨技高一籌,他為計算機增添了一種名叫「步進輪」的裝置。步進輪是一個有9個齒的長圓柱體,9個齒依次分布於圓柱表面;旁邊另有個小齒輪可以沿著軸向移動,以便逐次與步進輪嚙合。
  • 第一位程式設計師是一位女性,給差分機著書,寫出了第一個電腦程式
    此時的巴貝奇位居劍橋大學的盧卡斯數學席位(Lucasian Chair of Mathematics),這個榮譽席位向來都是給予當世最負盛名的數理學者,例如牛頓和霍金也都曾擔任盧卡斯教授。因此這個於巴貝奇家中定期舉辦的沙龍,總是聚集許多名流、學者,或有才藝演出,或有新奇事物與發明的展示;巴貝奇也大方展出因經費中止而暫停開發的差分機。
  • 計算機之父——巴貝奇 1822年6月14 日
    他就是劍橋大學「盧卡斯講座」的數學教授,被後人稱為計算機之父的查理斯·巴貝奇。那一時期,蒸汽機和各種機械裝置的發明,使巴貝奇相信機械力量可以做到一切。他的第一個夢想,是製造一臺能利用單一過程計算出對數表和三角函數表的機器,他把這臺機器叫做「差分機」。 1822 年,這臺叫做差分機 1 號的樣機製作完成。
  • 是誰發明了世界上第一臺計算機?
    是誰發明了世界上第一臺計算機?在17世紀到20世紀的幾百年間,曾經出現過一批不帶電的計算機,這些計算機裡面沒有電路板,只有一堆機械齒輪。 17世紀法國有一位「全能超人」帕斯卡,他是數學家、物理學家,也是哲學家、流體動力學家,還是概率論的創始人之一。帕斯卡造出了一個內部裝著一堆齒輪的盒子,只要旋緊發條,它就可以轉起來。
  • 計算機之父是誰?
    ,比如:發明加減計算機的希卡特Schickard(1623)和帕斯卡Pascal(1642)。註:有一門計算機高級語言用Pascal來命名。萊布尼茲Leibnitz(1687)是一個偉大的數學家,他發明出可以乘除運算的計算機。你認他們誰是「計算機之父」呢?當然,你也可以認為他們做的都是「計算器Calculator」,還沒有計算機的基本結構呢。
  • 計算機的前身,萬事俱備只差……
    某一天,赫歇爾進來社團看見巴貝奇坐在桌前發呆,問他在想什麼,這句話便從他嘴中脫口而出。巴貝奇這句話反映出對數表令人又愛又恨的無奈。儘管萊布尼茲等人發明了各種計算器,卻因為造價太高,成為少數權貴才能擁有的收藏品。而對數尺雖然便宜實用,卻只能計算到三位數,所以若要做更精確的計算,對數表還是不可或缺的輔助工具。
  • 差分機,機械史上複雜的巔峰之作
    他是可編程計算機的發明者,計算機的先驅。他設計過的計算機器有差分機、分析機和第二個差分機。差分機,可謂是機械史最複雜的巔峰之作。查爾斯·巴貝奇在英國政府的支持下,巴貝奇在 1822 年開始了差分機的設計和製造,希望將從計算到印刷的過程全部自動化,這樣就可以避免人為誤差。差分機使用有限差分方法來機器計算多項式函數的值。
  • 查爾斯·巴貝奇——計算機先驅者之父
    2013-10-09 00:00:00 針對現代企業,這樣的科學概念可以理解為,準確的分析行業背景、企業構成,甚至到員工能力的合理洞察,對最終合理的為企業進行員工分配有著非常深遠的意義。
  • 她是數學奇女子,巴貝奇的好友,卻沒能等到計算機的輝煌時刻
    她從瑪麗那裡第一次聽到巴貝奇這個名字。19 世紀 20 年代初,巴貝奇開始研究差分機 ,「分析機的獨特之處在於,將雅卡爾織布機為調節錦緞織造中最複雜的圖案而設計的原理以打孔卡的形式引入其中,分析機可以藉此計算抽象代數……這樣形容或許最貼切:分析機「編織」代數模式,如同雅卡爾織布機編織花朵和樹葉。」這簡直不能用天才來形容,這分明是人類史上的先知。
  • 孫德利 | 「菲利克斯」手搖計算機:「奧德涅爾輪」的應用讓計算器...
    這種加法器與算盤不同,它利用齒輪的轉動達到進位的目的,低位齒輪旋轉一周,高位齒輪旋轉一個數位,這樣就達到了自動進位的目的。雖然這臺計算器只能做加法運算,卻被公認為是世界上第一臺實用的計算器。  帕斯卡加法器的發明引起了很多人的注意,其中最著名的是德國數學家、哲學家、微積分的發明者之一戈特弗裡德·威廉·萊布尼茨(Gottfried Wilhelm Leibniz,1646—1716)。1671年,萊布尼茨著手改進帕斯卡的加法器,並於1674年發明了乘法器。萊布尼茨乘法器又稱步進計算器(step reckoner),可以做四則運算。
  • 為什麼中國人用算盤,西方人用計算機
    人們更熟悉電子顯示的計算器,更複雜的計算,則由電子計算機完成。 中國人很早就發展出了完備的計數系統、算數方法,為什麼沒有進一步發展,到最後卻是西方人先發明了計算機? 算盤,西亞人的發明 和一般人想像的不同,算盤並非中國人的發明。
  • 「計算機第一人」查爾斯·巴貝奇與英國科學界的革新時代
    在他1810年就讀於劍橋大學三一學院之前,他已經從拉格朗日(Joseph Louis Lagrange)等數學家的書中自學了一些現代數學知識。對現代數學的了解讓他對大學課程中的數學課程產生了很大不滿。在巴貝奇上學的年代,英國的數學課程都是以牛頓式方法、符號來進行微積分運算的;而法國、德國等國家則採用萊布尼茲發明的大陸式方法(the Continental method),這比牛頓的符號更加簡練、清晰。出於民族主義情緒和墨守陳規的心態,萊布尼茲的大陸式符號一直沒能在英國普及,這也在一定程度上導致了英國數學發展的滯後。
  • 亞里斯多德是如何發明計算機的
    計算機的歷史經常被描述為實物的歷史,從算盤,到巴貝奇差分機,再到二戰期間的密碼破譯機。作為基本模塊,這些電路構成了所謂的算術邏輯單元,後者是現代計算機的關鍵部件。 香農的另一大成就在於,他是區分計算機邏輯層和物理層的第一人。這種區分對計算機科學來說十分重要,以至於現代讀者可能無法理解它在當時是何等富有洞見——這倒使我們想到了那句諺語,「一個世紀的哲學是下一個世紀的常識。」
  • 棄文從理萊布尼茲,憑自己的熱忱鑽研二十年,發明四則運算計算器
    它的乘法是以帕斯卡加法器為基礎累加而成,例如 45 x 23 就是先把代表被乘數的轉盤轉到 4 和 5 後,再讓個位數齒輪轉三圈,完成 45 + 45 + 45 = 135 後,接著轉十位數齒輪兩圈,就會把 135再加兩次 450 ,得到答案 1035 。這中間的聯動方式除了一般的齒輪嚙合,還要用到鏈條與」針形齒輪」;針形齒輪沒有鋸齒狀的輪齒,是靠盤面最外圍九根突起的短棒與其它齒輪聯動。
  • 計算機的歷史——計算機之父 轉字 小黑盒
    說起計算機之父,那就眾說紛紜了,當前我們一般稱馮·諾依曼為計算機之父,嚴格來講他是現代計算機之父,能背負計算機之父名號的人還有好幾個,其中大家最熟悉可能是圖靈了,此外巴貝奇和約翰·阿坦納索夫也在某種程度上被認為是計算機之父。這一期的主題就是講述這四位計算機之父對計算機發展的貢獻。
  • 萊布尼茨憑什麼是「黑桃A」
    作為科學史上最偉大的一對對手,牛頓和萊布尼茨是閃耀在17世紀夜空的雙子星。兩人熠熠生輝,一時瑜亮。但許多人對牛頓熟悉,卻不一定對他的對手萊布尼茨熟悉。這並非因為萊布尼茨真的不如牛頓,而是時代的錯位誤使他生不逢時,如今21世紀的我們可能更能理解這位二進位鼻祖。
  • 微積分到底是牛頓發明還是萊布尼茨發明
    微積分的發明,絕對是人類歷史上最重要的發明之一。著名數學家、計算機學家馮諾依曼就曾評價:「…微積分是現代數學的第一個成就,而且怎樣評價它的重要性都不為過…微積分比其他任何事物都更清楚地表明了現代數學的發端」。
  • 探究計算機的發展史:早期計算都經歷了什麼?
    現如今的計算機也一樣,從自動化農業到醫療設備到全球電子通訊、虛擬實現和自動駕駛等都離不開計算機,這就是我們的資訊時代。當你看著你的手機,可能會覺得計算機很複雜,但是在計算機人士看來,他們只是通過許多抽象結構表現出來的複雜行為的產物。