計算機發展歷程
- 導讀
- 一、計算機的誕生
- 1.1 歷史背景
- 1.2 計算機的發明
- 二、計算機硬件的發展
- 1.1 計算機的四代變化
- 1.1.1 第一代計算機
- bug的由來
- 1.1.2 第二代計算機
- 1.1.3 第三代計算機
- 半導體存儲器的發展
- 1.1.4 第四代計算機
- 1.2 個人計算機的發展
- 1.2.1 微處理器的發展
- 1.2.2 個人計算機的出現
- 三、計算機軟件的發展
- 結語
導讀
大家好,很高興又和大家見面啦!!!
從今天開始,我們將開始學習一門新的課程——計算機組成原理(Computer Organization, CO)。
計算機組成原理這門課程與操作系統一樣,同樣也是一門理論學科。在學習這門課程的過程中,我們會接觸到很多的計算機名詞,了解到計算機最底層的理論知識。這門學科的學習能夠幫助我們更好的理解一臺計算機及其工作原理。
計組這門課程總共有七大章節:
- 計算機系統概述
- 數據的標識和運算
- 存儲系統
- 指令系統
- 中央處理器
- 總線
- 輸入/輸出系統
我們會在學習這些內容的過程中逐步加深對計算機的理解。
【計算機組成原理】博客專欄和其它的專欄一樣,都是我個人的一份學習筆記。在每一篇的內容中,我都會完成相應理論知識點的記錄、個人理解的對應表達以及相關必要的圖片的繪制。
在當今的信息化時代,我們在生活中會經常使用計算機、手機等電子產品。一臺個人計算機則是由最底層的硬件、在硬件之上的操作系統以及在操作系統之上的軟件構成,而我們與其他人通過計算機進行交流時,則是通過計算機網絡實現:
通過【計算機組成原理】這門課,我們會學習到計算機最底層的硬件的工作原理;通過【操作系統】這門課,我們會學習搭載在硬件上的操作系統的工作原理;通過學習【C/C++/JAVA……】這些高級編程語言以及【數據結構】這門課,我們則能夠學習如果通過計算機語言來描述咱們的世界;通過學習【計算機網絡】這門課,我們會學習計算機與計算機之間傳遞信息的工作原理。
因此整個計算機學習的階段,高級編程語言、DS、OS、CO、CN這五門課程是必不可少的。在今天的內容中,我們將會學習一下計算機一個發展歷程,了解一下計算機從誕生開始到現在經歷了怎樣的發展。今天的篇章算是學習計算機組成原理之前的一個小故事,下面我們就來進入今天的內容吧!
一、計算機的誕生
1.1 歷史背景
科技的發展是以國家之間的對抗為背景的,一個國家要想強大,只能通過不斷的提升自己的技術。
時間回到二戰時期,當時的戰斗十分激烈,但是各國的武器裝備卻沒有特別的先進,在戰斗中占主導地位的戰略武器就是飛機和大炮,因此研制和開發新型的大炮和導彈就是當時的重中之重。為此美國陸軍軍械部在馬里蘭州的阿拉伯丁設立了“彈道研究實驗室”。1
1.2 計算機的發明
于1937年~1941年間,美國愛荷華州立大學的約翰·文森特·阿塔納索夫(John Vincent Atanasoff)教授和他的研究生克利福特·貝瑞(Clifford Berry)先生研發了“阿塔納索夫-貝瑞計算機”(Atanasoff-Berry Computer,簡稱ABC)。
ABC計算機是第一臺電子化的計算機,非圖靈完備和不可編程是其最大限制。
1941年,莫克利(JohnW.Mauchly)在阿坦納索夫家中借助了5天,在此期間“盜取”了阿塔納索夫教授的研究成果及想法,之后于1942年提出了試制第一臺能夠計算導彈彈道軌跡的電子計算機的初始設想——“高速電子管計算裝置的使用”,期望用電子管代替繼電器以提高機器的計算速度。
美國軍方得知這一設想后,馬上撥款大力支持,成立了以莫克利、埃克特(John Eckert)為首的研制小組開始研制工作,預算經費為15萬美元。于是世界上第二臺電子計算機,世界上第一臺通用計算機 ENIAC (Electronic Numerical Integrator And Computer)開始進入研發狀態。
于1944年,也就是 ENIAC 的研發中期,當時彈道研究所的顧問——正在參與美國第一顆原子彈研制工作的數學家馮·諾依曼(von Neumann,1903-1957,美籍匈牙利人)帶著原子彈研制過程中遇到的大量計算問題,在研制過程中期加入了研制小組。
當時的 ENIAC 設計中存在兩個問題:
- 沒有存儲器
- 它是使用布線接板進行控制的
為了進行搭接,可能需要耗費數天的時間,這就導致計算機的速度被這一工作抵消了。
1945年,為了解決 ENIAC 存在的這兩個問題,馮·諾依曼和他的研制小組在共同討論的基礎上,發表了一個全新的“存儲程序通用電子計算機方案”—— EDVAC (Electronic Discrete Variable Automatic Computer)。方案中提出的計算機體系結構一直延續至今,也就是現代計算機的馮·諾依曼結構。
EDVAC 的初步預算為10萬美元,但最終的成本大約超過估計的4倍,約50萬美元。2
1946年,第一臺通用計算機 ENIAC 問世,并開始投入運行。
1949年8月,第一臺離散變量自動電子計算機 EDVAC 問世,于1951年正式開始投入運行。
二、計算機硬件的發展
在開始介紹硬件的發展之前,我們需要先了解幾個名詞:
- 電信號:隨時間而變化的電壓或電流。
- 二進制語言:面相機器的語言,直接來自計算機的指令系統,與具體計算機緊密相關。在二進制語言中通常將電信號的高電平用1表示,將電信號的低電平用0表示。
- 機器語言:機器能夠識別的二進制語言
- 邏輯元件:處理電信號的最小基本單位
這些名詞在后續的內容中會經常提到,我們先要對其有個初步影響,接下來我們就來看看整個計算機硬件的發展過程;
1.1 計算機的四代變化
從1946年世界上第一臺電子數字計算機 ENIAC 問世以來,計算機的發展已經經歷了四代。
1.1.1 第一代計算機
- 第一代計算機(1946-1957年)——電子管時代。
在 ENIAC 問世后,人們在使用時通過在紙帶或卡片上打孔的方式來編寫機器語言,并通過紙帶機將紙帶上的內容轉換成對應的電信號——有孔代表低電平,無孔代表高電平。
以 ENIAC 為首的第一代計算機的邏輯元件采用的是電子管,通過電子管來識別這些電信號。
在 ENIAC 中,總共使用了1.8w個這樣的電子管,并通過線路將這些電子管給連接起來從而實現通過電路進行運算的功能,可想而知 ENIAC 必定是一個龐然大物。
ENIAC 總占地面積約為 170 m 2 170m^2 170m2,由于使用了大量的電子管,其耗電量也達到了 150 K W 150KW 150KW,即使有這么大的占地面積和這么高的耗電量,其運算速度也只能夠實現 5000 次左右的加法運算 / 秒 5000次左右的加法運算/秒 5000次左右的加法運算/秒。
bug的由來
在一次實驗中,這些科學家們像往常一樣將打了孔洞的紙帶放入紙帶機后,就等 ENIAC 進行相應的運算,可是那一次實驗出現了問題,他們在尋找原因的過程中,其中一人在紙帶上發現了一只小蟲子,于是便說我發現了bug,這里的bug是指小蟲子的意思。
后來人們便將這次事故中因這只小蟲子產生的故障稱為程序漏洞,并以bug來命名。這種說法并沿用至今,現在我們在運行程序時如果遇到了問題,我們也會驚呼,這是bug,我發現了bug……
哈哈哈,題外話到此為止,下面我們繼續回歸正題。
以 ENIAC 為首的第一代計算機因其邏輯元件采用的是電子管,所以將這一時期稱為電子管時代。在電子管時代的計算機的特點有以下幾點:
- 邏輯元件采用電子管;
- 使用機器語言進行編程;
- 主存用延遲線或磁鼓存儲信息,容量極小;
- 體積龐大,成本高;
- 運算速度較低,一般只有幾千次到幾萬次每秒。
1.1.2 第二代計算機
- 第二代計算機(1958-1964年)——晶體管時代。
在第二次世界大戰期間,不少實驗室在有關硅和鍺材料的制造和理論研究方面,也取得了不少成績,這就為晶體管的發明奠定了基礎。
為了克服電子管的局限性,第二次世界大戰結束后,貝爾實驗室加緊了對固體電子器件的基礎研究。肖克萊等人決定集中研究硅、鍺等半導體材料,探討用半導體材料制作放大器件的可能性。
1945年秋天,貝爾實驗室成立了以肖克萊為首的半導體研究小組,成員有布拉頓、巴丁等人。
1947年12月,這個世界上最早的實用半導體器件終于問世了,在首次試驗時,它能把音頻信號放大100倍,它的外形比火柴棍短,但要粗一些。在為這種器件命名時,布拉頓想到它的電阻變換特性,即它是靠一種從“低電阻輸入”到“高電阻輸出”的轉移電流來工作的,于是取名為trans-resistor(轉換電阻),后來縮寫為transistor,中文譯名就是晶體管。
1950年,第一只“PN結型晶體管”問世了。
半導體材料的發明,尤其是硅半導體材料的應用,為晶體管計算機的發明奠定了基礎。
1953:年,磁芯存儲器被開發出來。
1954年,IBM的John Backus和他的研究小組開始開發 FORTRAN。
同年,美國貝爾實驗室研制成功第一臺使用晶體管線路的計算機,取名“催迪克”(TRADIC),裝有800個晶體管。
1957年,FORTRAN 高級語言開發成功,這是一種適合科學研究使用的計算機高級語言。
1958年,美國的IBM公司制成了第一臺全部使用晶體管的計算機RCA501型。
由于RCA501型計算機采用晶體管邏輯元件,及快速磁芯存儲器,計算機速度從每秒幾千次提高到幾十萬次,主存儲器的存貯量,從幾千提高到10萬以上。
以RCA501為首的第二代計算機由于采用的是晶體管作為邏輯元件,因此該時代也被稱為晶體管時代。在晶體管時代的計算機具有以下特點:
- 邏輯元件采用晶體管;
- 運算速度提高到幾萬次到幾十萬次每秒;
- 主存使用磁芯存儲器;
- 計算機軟件也得到了發展,開始出現了高級語言及其編譯程序,有了操作系統的雛形。
1.1.3 第三代計算機
- 第三代計算機(1965-1971年)——中小規模集成電路時代。
1958年,仙童公司Robert Noyce與德儀公司基爾比間隔數月分別發明了集成電路,開創了世界微電子學的歷史;
1960年,H H Loor和E Castellani發明了光刻工藝
1962年,美國RCA公司研制出MOS場效應晶體管
1963年,F.M.Wanlass和C.T.Sah首次提出CMOS技術,今天,95%以上的集成電路芯片都是基于CMOS工藝
1964年,Intel摩爾提出摩爾定律,預測晶體管集成度將會每18個月增加1倍。
- 摩爾定律。當價格不變時,集成電路上可容納的晶體管數目,約每隔18個月便會增加一倍,性能也會提示一倍。也就是說我們現在和18個月后花同樣的錢買到的CPU,后者的性能是前者的兩倍。這一定律揭示了信息技術進步的速度。
1964年4月7日,IBM公司研制成功世界上第一個采用集成電路的通用計算機IBM 360系統,它兼顧了科學計算和事務處理兩方面的應用。IBM 360系列計算機是最早使用集成電路的通用計算機系列,它開創了民用計算機使用集成電路的先例,計算機從此進入了集成電路時代。
1966年:美國RCA公司研制出CMOS集成電路,并研制出第一塊門陣列(50門),為現如今的大規模集成電路發展奠定了堅實基礎,具有里程碑意義。
以IBM 360為首的第三代計算機采用的邏輯元件為中小規模的集成電路,因此該時期也被稱為中小規模集成電路時代。這個時代,計算機主要還是應用于科學計算等專業用途,并未在普通的家庭進行普及。該時代的計算機具有以下特點:
- 邏輯元件采用中小規模集成電路;
- 半導體存儲器開始取代磁芯存儲器;
- 高級語言發展迅速,操作系統也進一步發展,開始有了分時操作系統;
半導體存儲器的發展
1970年,仙童半導體公司生產處第一個較大容量的半導體存儲器,至今,半導體存儲器經歷了11代:單芯片1KB、4KB、16KB、64KB、256KB、1MB、4MB、16MB、256MB和現在的1GB。
1.1.4 第四代計算機
- 第四代計算機(1972年至今)——超大規模集成電路時代。
1967年和1977年分別出現了大規模和超大規模集成電路。由大規模和超大規模集成電路組裝成的計算機,被稱為第四代電子計算機。美國ILLIAC-IV計算機,是第一臺全面使用大規模集成電路作為邏輯元件和存儲器的計算機,它標志著計算機的發展已到了第四代。
第四代計算機的另一個重要分支是以大規模、超大規模集成電路為基礎發展起來的微處理器和微型計算機。
微處理器和微型計算機的發展總共經歷了四個階段:
-
第一階段是1971~1973年,微處理器有4004、4040、8008。 1971年Intel公司研制出MCS4微型計算機(CPU為4040,四位機)。后來又推出以8008為核心的MCS-8型。
-
第二階段是1973~1977年,微型計算機的發展和改進階段。微處理器有8080、8085、M6800、Z80。初期產品有Intel公司的MCS一80型(CPU為8080,八位機)。后期有TRS-80型(CPU為Z80)和APPLE-II型(CPU為6502),在八十年代初期曾一度風靡世界。
-
第三階段是1978~1983年,十六位微型計算機的發展階段,微處理器有8086、8088、80186、80286、M68000、Z8000。微型計算機代表產品是IBM-PC(CPU為8086)。本階段的頂峰產品是APPLE公司的Macintosh(1984年)和IBM公司的PC/AT286(1986年)微型計算機。
-
第四階段便是從1983年開始為32位微型計算機的發展階段。微處理器相繼推出80386、80486。386、486微型計算機是初期產品。 1993年, Intel公司推出了Pentium或稱P5(中文譯名為“奔騰”)的微處理器,它具有64位的內部數據通道。Pentium III(也有人稱P7)微處理器己成為了主流產品,Pentium IV 已在2000年10月推出。
由此可見,微型計算機的性能主要取決于它的核心器件——微處理器(CPU)的性能。
該時期計算機的特點有:
- 邏輯元件采用大規模集成電路和超大規模集成電路,產生了微處理器;
- 諸如并行、流水線、高速緩存和虛擬存儲器等概念用在了這代計算機中。
1.2 個人計算機的發展
將CPU濃縮在一塊芯片上的微型機的出現與發展,掀起了計算機大普及的浪潮。
1.2.1 微處理器的發展
1969年,英特爾(Intel)公司受托設計一種計算器所用的整套電路,公司的一名年輕工程師費金(Federico Fagin)成功地在4.2×3.2的硅片上,集成了2250個晶體管。這就是第一個微處理器——Intel 4004。它是4位的。
1971年11月15日,Intel公司的工程師霍夫發明了世界上第一個商用微處理器—4004,從此這一天被當作具有全球IT界里程碑意義的日子而被永遠的載入了史冊
在它之后,1972年初又誕生了8位微處理器Intel 8008。
1973年出現了第二代微處理器(8位),如Intel 8080(1973)、M6800(1975,M代表摩托羅拉公司)、Z80(1976,Z代表齊洛格公司)等。
1978年出現了第三代微處理器(16位),如Intel 8086、Z8000、M68000等。
1981年出現了第四代微處理器(32位),如iAPX432、i80386、MAC-32、NS-16032、Z80000、HP-32等。它們的性能都與七十年代大中型計算機大致相匹敵。微處理器的兩三年就換一代的速度,是任何技術也不能比擬的。
自1971年Intel公司開發出第一個微處理器Intel 4004至今,微處理器經歷了Intel 8008(8位)、Intel 8086(16位)、Intel 80386(32位)、Pentium(32位)、Pentium Ⅲ(64位)、Pentium 4(64位)、Core i7(64位)等。
這里的4位、8位、16位、32位、64位指的是機器字長,是指計算機進行一次整型運算所能處理的二進制數據的位數。
1.2.2 個人計算機的出現
最早的個人計算機之一是美國蘋果(Apple)公司的AppleⅡ型計算機,于1977年開始在市場上出售。繼之出現了TRS-80(Radio Shack公司)和PET-2001(Commodore公司)。
從此以后,各種個人計算機如雨后春筍一般紛紛出現。
當時的個人計算機一般以8位或16位的微處理器芯片為基礎,存儲容量為64KB以上,具有鍵盤、顯示器等輸入輸出設備,并可配置小型打印機、軟盤、盒式磁盤等外圍設備,且可以使用各種高級語言自編程序。
隨著PC機的不斷普及,IBM公司于1979年8月也組織了個人計算機研制小組。兩年后宣布了IBM-PC,1983年又推出了擴充機型IBM-PC/XT,引起計算機工業界極大震動。在當時,IBM個人計算機具有一系列特點:設計先進(使用Intel8088微處理器)、軟件豐富(有八百多家公司以它為標準編制軟件)、功能齊全(通信能力強,可與大型機相連)、價格便宜(生產高度自動化,成本很低)。
到1983年,IBM-PC迅速占領市場,取代了號稱美國微型機之王的蘋果公司。
三、計算機軟件的發展
計算機軟件技術的蓬勃發張,也為計算機系統的發展做出了很大的貢獻。
計算機軟件的發展實際上就是計算機語言的發展。
- 在第二代計算機出現之前,科學家們使用的都是面向機器的機器語言,由于機器語言的可讀性很差,于是便出現了能夠讓人理解的匯編語言。但是不管是機器語言還是匯編語言都是需要根據具體的計算機能夠識別的語言來決定的,當時有些計算機可以識別匯編語言,而有些計算機只能識別機器語言,因此這個時期的軟件并沒有很好的發展。
- 在1957年,適合科學研究使用的計算機高級語言FORTRAN出現后,便開始出現了操作系統的雛形,此時的軟件才是真正意義上的開始發展。
- 而高級語言的發展真正促進了軟件的發展,它經歷了從科學計算和工程計算的FORTRAN、結構化程序設計的PASCAL到面向對象的C++和適應網絡環境的JAVA。
- 與此同時,直接影響計算機系統性能提升的各種系統軟件也有了長足的發展,特別是操作系統,如Windows、UNIX、Linux等。
結語
在今天的內容中我們詳細介紹了計算機的整個發展歷程:
從整個歷程中我們不難發現計算機的發展是逐漸往小型化的方向去發展,同時也是往更快的運算速度發展。
現在的計算機發展逐步走向了兩極分化:
- 一種是微型計算機向更微型、網絡化、高性能、多用途的方向發展;如智能手表、手機等
- 一種是巨型計算機向更巨型、超高速、并行處理、智能化的方向發展;如超級計算機——神威·太湖之光(每秒9.3億億次的浮點運算)
今天的內容到這里就全部結束了,在下一篇內容中我們將介紹計算機系統層次結構的相關內容,大家記得關注哦!如果大家喜歡博主的內容,可以點贊、收藏加評論支持一下博主,當然也可以將博主的內容轉發給你身邊需要的朋友。最后感謝各位朋友的支持,咱們下一篇再見!!!
ENIAC ??
EDVAC ??