💗計算機基礎系列文章💗
- 👉🍀計算機基礎(1)——計算機的發展史🍀
- 👉🍀計算機基礎(2)——馮諾依曼體系結構🍀
- 👉🍀計算機基礎(3)——計算機的系統組成🍀
- 👉🍀計算機基礎(4)——操作系統概述🍀
- 👉🍀計算機基礎(5)——進制與進制轉換🍀
- 👉🍀計算機基礎(6)——編碼與解碼🍀
- 👉🍀計算機基礎(7)——數字圖像技術🍀
- 👉🍀計算機基礎(8)——音頻數字化(模電與數電)🍀
- 👉🍀計算機基礎(9)——原碼、補碼、反碼🍀
- 👉🍀計算機基礎(10)——編程語言與跨平臺🍀
計算機的發展史
計算機(computer)俗稱電腦,是現代一種用于高速計算的電子計算機器,可以進行數值計算,又可以進行邏輯計算,還具有存儲記憶功能。是能夠按照程序運行,自動、高速處理海量數據的現代化智能電子設備。
在過去的幾十年里,計算機科學經歷了令人矚目的飛速發展。經歷了電子管、晶體管、集成電路的世代發展,體積越來越小、性能越來越強,為人類帶來了巨大的便利和變革,下面我們來回顧計算機的發展歷程。
圖靈
1936年英國數學家阿蘭·麥席森·圖靈(Alan Mathison Turing)發表了論文“論可計算及其在判定問題中的應用(On Computable Numbers With an Application to the Enstcheidungs Problem)”。有趣的是,該論文的主題是回答德國大數學家戴維 · 希爾伯特在1900年提出的著名的“23個數學難題”中的一個問題,只是在其論文的一個腳注中“順便”提出來一種計算機抽象模型或稱為理想中的計算機,利用這種計算機,可以把推理化作一些簡單的機械動作。可真是“歪打正著”,正是這個腳注,開辟了計算機科學技術史的新紀元,圖靈提出的這種計算模型現在被大家稱為“圖靈機”(Turing Machine),圖靈機的出現為現代計算機科學奠定了理論基礎。
圖靈的論文發表后,立刻引起了美國科學家的重視,暜林斯頓大學立即向圖靈發出邀請,于是圖靈首次遠涉重洋來到美國,并在暜林斯頓大學進修。在這段時間里,圖靈還遇到了計算機科學理論的另一位重要奠基人——約翰·馮·諾依曼(John von Neumann)。馮·諾依曼對圖靈發表的論文極度贊賞,馮·諾依曼在提出了著名的“馮·諾依曼體系結構”后一再強調他的“存儲程序”的主要思想就來自于圖靈。在圖靈去世后的12年,美國的計算機協會ACM (Association for Computing Machinery) 確定設立圖靈獎,專門獎勵那些在計算機科學研究中作出創造性貢獻、推動計算機科學技術發展的杰出科學家,它是計算機界最負盛名、最崇高的一個獎項,有“計算機界的諾貝爾獎”之稱。
香農
1938年美國數學家、信息論創始人克勞德·艾爾伍德·香農(Claude Elwood Shannon)在其碩士畢業論文《中繼及開關電路的符號分析》論證了數字計算機及數字線路邏輯設計的可能性,深刻的揭示了布爾代數與開關電路之間的關系,這篇論文奠定了計算機電路設計的基礎。另外,香農在1948年發表的劃時代論文《通信的數學理論》中,宣告了“信息論”作為一門學科的誕生,信息論為計算機領域的信息處理和通信提供了理論基礎。
世界上真正意義上的第一臺電子數字計算機是由美國物理學家約翰·文森特·阿塔納索夫 (John Vincent Atanasoff)和當時還是物理系研究生的貝瑞在1937年開始設計,該計算機不可編程,僅僅設計用于求解線性方程組,并在1942年成功進行了測試,該計算機是一臺樣機,并未完全實現阿塔納索夫的構想,這臺樣機被稱為阿塔納索夫-貝瑞計算機(Atanasoff–Berry Computer,通常簡稱ABC計算機),是目前公認的計算機先驅,ABC計算機為今天大型機和小型機的發展奠定了堅實的基礎。
ENIAC
1946年美國物理學家莫奇利(Mauchly,John William)任總設計師,和他的學生約翰·埃克特(John Presper Eckert)基于ABC計算機的設計思想研制成功出了一臺真正使用的電子數字計算機,取名埃尼阿克(Electronic Numerical Integrator And Computer,ENIAC,簡稱ENIAC),ENIAC代表了計算機發展史上的里程碑。莫奇利和他的學生埃克特成功研制ENIAC后就立即為其申請并獲得了美國專利,這就導致了ABC于ENIAC之間的“世界上第一臺電子數字計算機”頭銜之爭。不過莫奇利的專利于1973年被美國明尼蘇達地區法院宣判取消,因而現在公認的第一臺電子計算機為ABC,不過至今為止國內外的不少文獻上仍將ENIAC列為“第一臺”計算機,在此我們也不做過多的討論,值得肯定的是無論是ACB還是ENIAC無疑都是人類歷史上最偉大的發明之一。
發展階段 | 時間 | 硬件設備 | 運算速度 | 操作系統 | 特點 |
---|---|---|---|---|---|
第一代 | 1946~1956 | 電子管 | 幾千~幾萬 | 無操作系統 | 使用機器語言編程 體積龐大,耗電量大,主要用于軍事研究 |
第二代 | 1956~1963 | 晶體管 | 幾十萬~幾百萬 | 單道批處理系統 | 主要使用匯編語言 開始使用FORTRAN、GOBOL等語言 體積變小,耗電量降低,可靠性提高 |
第三代 | 1964~1971 | 集成電路 | 幾百萬~幾千萬 | 多道批處理系統、分時系統 | 高級語言進一步發展 開始使用A(ALGOL)、B、C等語言 速度快、體積小,開始應用于社會各個領域。 |
第四代 | 1971~至今 | 超大規模集成電路 | 幾十億~幾千億 | 現代操作系統 | 使用各種高級語言,如Java、C/C++、Python等 體積更小,運算速度更快,應用領域更廣。 |