百科解釋
目錄·歷史·原理·計算機(jī)的數(shù)字電路實現(xiàn)·輸入輸出設(shè)備·程序·庫與操作系統(tǒng)·應(yīng)用·網(wǎng)絡(luò)、國際互聯(lián)網(wǎng)·下一代計算機(jī)·計算機(jī)學(xué)科 電子計算機(jī)(electronic computer),俗稱電腦,簡稱計算機(jī)(computer),是一種根據(jù)一系列指令來對數(shù)據(jù)進(jìn)行處理的機(jī)器。所相關(guān)的技術(shù)研究叫計算機(jī)科學(xué),由數(shù)據(jù)為核心的研究稱信息技術(shù)。 計算機(jī)種類繁多。實際來看,計算機(jī)總體上是處理信息的工具。根據(jù)圖靈機(jī)理論,一部具有最基本功能的計算機(jī)應(yīng)當(dāng)能夠完成任何其它計算機(jī)能做的事情。因此,只要不考慮時間和存儲因素,從個人數(shù)碼助理(PDA)到超級計算機(jī)都應(yīng)該可以完成同樣的作業(yè)。即是說,即使是設(shè)計完全相同的計算機(jī),只要經(jīng)過相應(yīng)改裝,就應(yīng)該可以被用于從公司薪金管理到無人駕駛飛船操控在內(nèi)的各種任務(wù)。由于科技的飛速進(jìn)步,下一代計算機(jī)總是在性能上能夠顯著地超過其前一代,這一現(xiàn)象有時被稱作“摩爾定律”。 計算機(jī)在組成上形式不一。早期計算機(jī)的體積足有一間房屋大小,而今天某些嵌入式計算機(jī)可能比一副撲克牌還小。當(dāng)然,即使在今天,依然有大量體積龐大的巨型計算機(jī)為特別的科學(xué)計算或面向大型組織的事務(wù)處理需求服務(wù)。比較小的,為個人應(yīng)用而設(shè)計的計算機(jī)稱為微型計算機(jī),簡稱微機(jī)。我們今天在日常使用“計算機(jī)”一詞時通常也是指此。不過,現(xiàn)在計算機(jī)最為普遍的應(yīng)用形式卻是嵌入式的。嵌入式計算機(jī)通常相對簡單,體積小,并被用來控制其它設(shè)備—無論是飛機(jī),工業(yè)機(jī)器人還是數(shù)碼相機(jī)。 上述對于電子計算機(jī)的定義包括了許多能計算或是只有有限功能的特定用途的設(shè)備。然而當(dāng)說到現(xiàn)代的電子計算機(jī),其最重要的特征是,只要給予正確的指示,任何一臺電子計算機(jī)都可以模擬其他任何計算機(jī)的行為(只受限于電子計算機(jī)本身的存儲容量和執(zhí)行的速度)。據(jù)此,現(xiàn)代電子計算機(jī)相對于早期的電子計算機(jī)也被稱為通用型電子計算機(jī)。 歷史ENIAC是電腦發(fā)展史上的一個里程碑本來,計算機(jī)的英文原詞“computer”是指從事數(shù)據(jù)計算的人。而他們往往都需要借助某些機(jī)械計算設(shè)備或模擬計算機(jī)。這些早期計算設(shè)備的祖先包括有算盤,以及可以追溯到公元前87年的被古希臘人用于計算行星移動的安提基特拉機(jī)制。隨著中世紀(jì)末期歐洲數(shù)學(xué)與工程學(xué)的再次繁榮,1623年由Wilhelm Schickard率先研制出了歐洲第一臺計算設(shè)備,這是一個能進(jìn)行六位以內(nèi)數(shù)加減法,并能通過鈴聲輸出答案的“計算鐘”。使用轉(zhuǎn)動齒輪來進(jìn)行操作。 1642年法國數(shù)學(xué)家Pascal 在WILLIAM Oughtred計算尺的基礎(chǔ)上,將計算尺加以改進(jìn),能進(jìn)行八位計算。還賣出了許多制品,成為當(dāng)時一種時髦的商品。 1801年,Joseph Marie Jacquard對織布機(jī)的設(shè)計進(jìn)行了改進(jìn),其中他使用了一系列打孔的紙卡片來作為編織復(fù)雜圖案的程序。Jacquard式織布機(jī),盡管并不被認(rèn)為是一臺真正的計算機(jī),但是它的出現(xiàn)確實是現(xiàn)代計算機(jī)發(fā)展過程中重要的一步。 查爾斯・巴比奇(Charles Babbage)是構(gòu)想和設(shè)計一臺完全可編程計算機(jī)的第一人,當(dāng)時是1820年。但由于技術(shù)條件,經(jīng)費(fèi)限制,以及無法忍耐對設(shè)計不停的修補(bǔ),這臺計算機(jī)在他有生之年始終未能問世。約到19世紀(jì)晚期,許多后來被證明對計算機(jī)科學(xué)有著重大意義的技術(shù)相繼出現(xiàn),包括打孔卡片以及真空管。Hermann Hollerith設(shè)計了一臺制表用的機(jī)器,就實現(xiàn)了應(yīng)用打孔卡片的大規(guī)模自動數(shù)據(jù)處理。 在20世紀(jì)前半葉,為了迎合科學(xué)計算的需要,許許多多單一用途的并不斷深化復(fù)雜的模擬計算機(jī)被研制出來。這些計算機(jī)都是用它們所針對的特定問題的機(jī)械或電子模型作為計算基礎(chǔ)。20世紀(jì)三四十年代,計算機(jī)的性能逐漸強(qiáng)大并且通用性得到提升,現(xiàn)代計算機(jī)的關(guān)鍵特色被不斷地加入進(jìn)來。 1937年由克勞德·艾爾伍德·香農(nóng)(Claude Shannon)發(fā)表了他的偉大論文《對繼電器和開關(guān)電路中的符號分析》,文中首次提及數(shù)字電子技術(shù)的應(yīng)用。他向人們展示了如何使用開關(guān)來實現(xiàn)邏輯和數(shù)學(xué)運(yùn)算。此后,他通過研究Vannevar Bush的微分模擬器進(jìn)一步鞏固了他的想法。這是一個標(biāo)志著二進(jìn)制電子電路設(shè)計和邏輯門應(yīng)用開始的重要時刻,而作為這些關(guān)鍵思想誕生的先驅(qū),應(yīng)當(dāng)包括:Almon Strowger,他為一個含有邏輯門電路的設(shè)備申請了專利;尼古拉・特斯拉(Nikola Tesla),他早在1898年就曾申請含有邏輯門的電路設(shè)備;Lee De Forest,于1907年他用真空管代替了繼電器。 Commodore公司在20世紀(jì)八十年代生產(chǎn)的Amiga 500電腦沿著這樣一條上下求索的漫漫長途去定義所謂的“第一臺電子計算機(jī)”可謂相當(dāng)困難。1941年5月12日,Konrad Zuse完成了他的機(jī)電共享設(shè)備“Z3”,這是第一臺具有自動二進(jìn)制數(shù)學(xué)計算特色以及可行的編程功能的計算機(jī),但還不是“電子”計算機(jī)。此外,其他值得注意的成就主要有:1941年夏天誕生的阿塔納索夫-貝瑞計算機(jī)是世界上第一臺電子計算機(jī),它使用了真空管計算器,二進(jìn)制數(shù)值,可復(fù)用內(nèi)存;在英國于1943年被展示的神秘的巨像計算機(jī)(Colossus computer),盡管編程能力極其有限,但是它的的確確告訴了人們使用真空管既值得信賴又能實現(xiàn)電氣化的再編程;哈佛大學(xué)的Harvard Mark I;以及基于二進(jìn)制的“埃尼阿克”(ENIAC,1944年),這是第一臺通用意圖的計算機(jī),但由于其結(jié)構(gòu)設(shè)計不夠彈性化,導(dǎo)致對它的每一次再編程都意味著電氣物理線路的再連接。 開發(fā)埃尼愛克的小組針對其缺陷又進(jìn)一步完善了設(shè)計,并最終呈現(xiàn)出今天我們所熟知的馮·諾伊曼結(jié)構(gòu)(程序存儲體系結(jié)構(gòu))。這個體系是當(dāng)今所有計算機(jī)的基礎(chǔ)。20世紀(jì)40年代中晚期,大批基于此一體系的計算機(jī)開始被研制,其中以英國最早。盡管第一臺研制完成并投入運(yùn)轉(zhuǎn)的是“小規(guī)模實驗機(jī)”(Small-Scale Experimental Machine,SSEM),但真正被開發(fā)出來的實用機(jī)很可能是EDSAC。 在整個20世紀(jì)50年代,真空管計算機(jī)居于統(tǒng)治地位。1958年 9月12日 在Robert Noyce(INTEL公司的創(chuàng)始人)的領(lǐng)導(dǎo)下,發(fā)明了集成電路。不久又推出了微處理器。1959年到1964年間設(shè)計的計算機(jī)一般被稱為第二代計算機(jī)。 到了60年代,晶體管計算機(jī)將其取而代之。晶體管體積更小,速度更快,價格更加低廉,性能更加可靠,這使得它們可以被商品化生產(chǎn)。1964年到1972年的計算機(jī)一般被稱為第三代計算機(jī)。大量使用集成電路,典型的機(jī)型是IBM360系列。 到了70年代,集成電路技術(shù)的引入極大地降低了計算機(jī)生產(chǎn)成本,計算機(jī)也從此開始走向千家萬戶。1972年以后的計算機(jī)習(xí)慣上被稱為第四代計算機(jī);诖笠(guī)模集成電路,及后來的超大規(guī)模集成電路。1972年4月1日 INTEL推出8008微處理器。1976年Stephen Wozinak和Stephen Jobs創(chuàng)辦蘋果計算機(jī)公司。并推出其Apple I 計算機(jī)。1977年5月 Apple II 型計算機(jī)發(fā)布。1979年6月1日 INTEL發(fā)布了8位元的8088微處理器。 1982年,微電腦開始普及,大量進(jìn)入學(xué)校和家庭。1982年1月Commodore 64計算機(jī)發(fā)布,價格:595美元。 1982 年2月80286發(fā)布。時鐘頻率提高到20MHz,并增加了保護(hù)模式,可訪問16M內(nèi)存。支持1GB以上的虛擬內(nèi)存。每秒執(zhí)行270萬條指令,集成了134000個晶體管。 1990年11月: 第一代MPC (多媒體個人電腦標(biāo)準(zhǔn))發(fā)布。處理器至少80286/12MHz,后來增加到80386SX/16 MHz ,及一個光驅(qū),至少150 KB/sec的傳輸率。1994年10月10日 Intel 發(fā)布75 MHz Pentium處理器。1995年11月1日Pentium Pro發(fā)布。主頻可達(dá)200 MHz ,每秒鐘完成4.4億條指令,集成了550萬個晶體管。1997年1月8日Intel發(fā)布Pentium MMX。對游戲和多媒體功能進(jìn)行了增強(qiáng)。 此后計算機(jī)的變化日新月異,1965年發(fā)表的摩爾定律發(fā)表不斷被應(yīng)證,預(yù)測在未來10~15年仍依然適用。 計算機(jī)發(fā)展歷程 : 19世紀(jì)之前 一、機(jī)械計算機(jī)時代的拓荒者 在西歐,由中世紀(jì)進(jìn)入文藝復(fù)興時期的社會大變革,大大促進(jìn)了自然科學(xué)技術(shù)的發(fā)展,人們長期被神權(quán)壓抑的創(chuàng)造力得到空前釋放。其中制造一臺能幫助人進(jìn)行計算的機(jī)器,就是最耀眼的思想火花之一。從那時起,一個又一個科學(xué)家為把這一思想火花變成引導(dǎo)人類進(jìn)入自由王國的火炬而不懈努力。但限于當(dāng)時的科技總體水平,大都失敗了,這就是拓荒者的共同命運(yùn):往往見不到豐碩的果實。后人在享用這甜美的時候,應(yīng)該能從中品出一些汗水與淚水的滋味…… 1614: 蘇格蘭人John Napier (1550-1617)發(fā)表了一篇論文,其中提到他發(fā)明了一種可以計算四則運(yùn)算和方根運(yùn)算的精巧裝置。 1623: Wilhelm Schickard (1592-1635)制作了一個能進(jìn)行六位以內(nèi)數(shù)加減法,并能通過鈴聲輸出答案的''計算鐘''。通過轉(zhuǎn)動齒輪來進(jìn)行操作。 1625: William Oughtred (1575-1660) 發(fā)明計算尺 1642: 法國數(shù)學(xué)家Pascal 在WILLIAM Oughtred計算尺的基礎(chǔ)上將計算尺加以改進(jìn),能進(jìn)行八位計算。并且還賣出了許多,成為一種時髦的商品。 1668: 英國人Samuel Morl和 (1625-1695)制作了一個非十進(jìn)制的加法裝置,適宜計算錢幣。 1671: 德國數(shù)學(xué)家Gottfried Leibniz設(shè)計了一架可以進(jìn)行乘法,最終答案可以最大達(dá)到16位。 1775: 英國Charles制作成功了一臺與 Leibniz''s 的計算機(jī)類似的機(jī)器。但更先進(jìn)一些。 1776: 德國人Mathieus Hahn成功的制作了一臺乘法器。 1801: Joseph-Maire Jacuard 開發(fā)了一臺能用穿孔卡片控制的自動織布機(jī)。 1820: 法國人Charles Xavier Thomas de Colmar (1785-1870),制作成功第一臺成品計算機(jī),非常的可靠,可以放在桌面上,在后來的90多年間一直在市場上出售。 1822: 英國人Charles Babbage (1792-1871)設(shè)計了差分機(jī)和分析機(jī),其中設(shè)計的理論非常的超前,類似于百年后的電子計算機(jī),特別是利用卡片輸入程序和數(shù)據(jù)的設(shè)計被后人所采用。 1832: Babbage 和Joseph Clement 制成了一個差分機(jī)的成品,開始可以進(jìn)行6位數(shù)的運(yùn)算。后來發(fā)展到20位、30位,尺寸將近一個房子那么大。結(jié)果以穿孔的形式輸出。但限于當(dāng)時的制造技術(shù),他們的設(shè)計難以制成。 1834: 斯德哥爾摩的George Scheutz用木頭做了一臺差分機(jī)。 1834: Babbage 設(shè)想制造一臺通用的分析機(jī),在只讀存儲器(穿孔卡片)中存儲程序和數(shù)據(jù),Babbage在以后的時間繼續(xù)他的研究工作,并于1840年將操作數(shù)提高到了40位,并基本實現(xiàn)了控制中心(CPU)和存儲程序的設(shè)想,而且程序可以根據(jù)條件進(jìn)行跳轉(zhuǎn),能在幾秒內(nèi)作出一般的加法,幾分鐘內(nèi)作出乘除法。 1842: Babbage的差分機(jī)項目因為研制費(fèi)用昂貴,被政府取消。但他自己仍花費(fèi)大量的時間和精力于他的分析機(jī)研究。 1843: Scheutz 和他的兒子Edvard Scheutz 制造了一臺差分機(jī),瑞典政府同意繼續(xù)支持他們的研究工作。 1847: Babbage 花兩年時間設(shè)計了一臺較簡易的、31位的差分機(jī),但沒有人感興趣并支持他造出這臺機(jī)器。但后來倫敦科學(xué)博物館用現(xiàn)代技術(shù)復(fù)制出這臺機(jī)器后發(fā)現(xiàn),它確實能準(zhǔn)確的工作。 1848: 英國數(shù)學(xué)家George Boole創(chuàng)立二進(jìn)制代數(shù)學(xué)。提前差不多一個世紀(jì)為現(xiàn)代二進(jìn)制計算機(jī)鋪平了道路。 1853: 令Babbage感到高興的是,Scheutzes制造成功了真正意義上的比例差分機(jī),能進(jìn)行15位數(shù)的運(yùn)算。象Babbage所設(shè)想的那樣輸出結(jié)果。后來倫敦的Brian Donkin又造出了更可靠的第二臺。 1858: 第一臺制表機(jī)被Albany的Dudley天文臺買走。第二臺被英國政府買走。但天文臺并沒有將其充分利用,后來被送進(jìn)了博物館。而第二臺卻被幸運(yùn)的使用了很長時間。 1871: Babbage 制造了分析機(jī)的部分部件和印表機(jī)。 1878: 紐約的西班牙人Ramon Verea,制造成功桌面計算器。比前面提到的都要快。但他對將其推向市場不感興趣,只是想表明,西班牙人可以比美國人做的更好。 1879: 一個調(diào)查委員會開始研究分析機(jī)是否可行,最后他們的結(jié)論是:分析機(jī)根本不可能工作。此時Babbage 已經(jīng)去世了。調(diào)查之后,人們將他的分析機(jī)徹底遺忘了。但Howard Aiken 例外。 1885: 這時期更多的計算機(jī)涌現(xiàn)出來。如美國、俄國、瑞典等。他們開始用有槽的圓柱代替易出故障的齒輪。 1886: 芝加哥的Dorr E. Felt (1862-1930), 制造了第一臺用按鍵操作的計算器,而且速度非常快,按鍵抬起,結(jié)果也就出來了。 1889: Felt推出桌面印表計算器。 1890: 1890美國人口普查。1880年的普查人工用了7年的時間進(jìn)行統(tǒng)計。這意味著1890年的統(tǒng)計將會超過10年。美國人口普查部門希望能得到一臺機(jī)器幫助提高普查的效率。Herman Hollerith,建立制表機(jī)公司的那個人,后來他的公司發(fā)展成了IBM公司。借鑒了Babbage的發(fā)明,用穿孔卡片存儲數(shù)據(jù),并設(shè)計了機(jī)器。結(jié)果僅僅用了6個周就得出了準(zhǔn)確的數(shù)據(jù)(62622250人)。Herman Hollerith大發(fā)其財。 1892: 圣多美和普林西比的William S. Burroughs (1857-1898),制作成功了一臺比Felt的功能更強(qiáng)的機(jī)器,真正開創(chuàng)了辦公自動化工業(yè)。 1896: Herman Hollerith創(chuàng)辦了IBM公司的前身。1900~1910 1906: Henry Babbage, Charles Babbage 的兒子,在R. W. Munro的支持下,完成了父親設(shè)計的分析機(jī),但也僅能證明它能工作,而沒有將其作為產(chǎn)品推出。 二、電子計算機(jī)最初的日子里 在這之前的計算機(jī),都是基于機(jī)械運(yùn)行方式,盡管有個別產(chǎn)品開始引入一些電學(xué)內(nèi)容,卻都是從屬與機(jī)械的,還沒有進(jìn)入計算機(jī)的靈活:邏輯運(yùn)算領(lǐng)域。而在這之后,隨著電子技術(shù)的飛速發(fā)展,計算機(jī)就開始了由機(jī)械向電子時代的過渡,電子越來越成為計算機(jī)的主體,機(jī)械越來越成為從屬,二者的地位發(fā)生了變化,計算機(jī)也開始了質(zhì)的轉(zhuǎn)變。下面就是這一過渡時期的主要事件: 1906: 美國的Lee De Forest發(fā)明了電子管。在這之前造出數(shù)字電子計算機(jī)是不可能的。這為電子計算機(jī)的發(fā)展奠定了基礎(chǔ)。 1920~1930 1924年2月:IBM,一個具有劃時代意義的公司成立 1930~1940 1935: IBM推出IBM 601機(jī)。這是一臺能在一秒鐘算出乘法的穿孔卡片計算機(jī)。這臺機(jī)器無論在自然科學(xué)還是在商業(yè)意義上都具有重要的地位。大約造了1500臺。 1937: 英國劍橋大學(xué)的Alan M. Turing (1912-1954)出版了他的論文,并提出了被后人稱之為''圖靈機(jī)''的數(shù)學(xué)模型。 1937: BELL試驗室的George Stibitz展示了用繼電器表示二進(jìn)制的裝置。盡管僅僅是個展示品,但卻是第一臺二進(jìn)制電子計算機(jī)。 1938: Claude E. Shannon 發(fā)表了用繼電器進(jìn)行邏輯表示的論文。 1938: 柏林的Konrad Zuse 和他的助手們完成了一個機(jī)械可編程二進(jìn)制形式的計算機(jī),其理論基礎(chǔ)是Boolean代數(shù)。后來命名為Z1。它的功能比較強(qiáng)大,用類似電影膠片的東西作為存儲介質(zhì)?梢赃\(yùn)算七位指數(shù)和16位小數(shù)?梢杂靡粋鍵盤輸入數(shù)字,用燈泡顯示結(jié)果。 1939 1月1日: 加利福尼亞的David Hewlet和William Packard 在他們的車庫里造出了Hewlett-Packard計算機(jī)。名字是兩人用投硬幣的方式?jīng)Q定的。包括兩人名字的一部分。 1939年11月: 美國John V. Atanasoff和他的學(xué)生Clifford Berry 完成了一臺16位的加法器,這是第一臺真空管計算機(jī)。 1939: 二次世界大戰(zhàn)的開始,軍事需要大大促進(jìn)了計算機(jī)技術(shù)的發(fā)展。 1939: Zuse和Schreyer 開始在他們的Z1計算機(jī)的基礎(chǔ)上發(fā)展Z2計算機(jī)。并用繼電器改進(jìn)它的存儲和計算單元。但這個項目因為Zuse服兵役被中斷了一年。 1939/1940: Schreyer利用真空管完成了一個10位的加法器,并使用了氖燈做存儲裝置。 1940~1950 1940年1月: Bell實驗室的Samuel Williams和Stibitz制造成功了一個能進(jìn)行復(fù)雜運(yùn)算的計算機(jī)。大量使用了繼電器,并借鑒了一些電話技術(shù), 采用了先進(jìn)的編碼技術(shù)。 1941夏季: Atanasoff和學(xué)生Berry完成了能解線性代數(shù)方程的計算機(jī),取名叫''ABC''(Atanasoff-Berry Computer),用電容作存儲器,用穿孔卡片作輔助存儲器,那些孔實際上是''燒''上的。時鐘頻率是60HZ,完成一次加法運(yùn)算用時一秒。 1941年12月: 德國Zuse制作完成了Z3計算機(jī)的研制。這是第一臺可編程的電子計算機(jī)?商幚7位指數(shù)、14位小數(shù)。使用了大量的真空管。每秒種能作3到4次加法運(yùn)算。一次乘法需要3到5秒。 1943: 1943年到1959年時期的計算機(jī)通常被稱作第一代計算機(jī)。使用真空管,所有的程序都是用機(jī)器碼編寫,使用穿孔卡片。典型的機(jī)器就是: UNIVAC。 1943年1月: Mark I,自動順序控制計算機(jī)在美國研制成功。整個機(jī)器有51英尺長,重5噸,75萬個零部件,使用了3304個繼電器,60個開關(guān)作為機(jī)械只讀存儲器。程序存儲在紙帶上,數(shù)據(jù)可以來自紙帶或卡片閱讀器。被用來為美國海軍計算彈道火力表。 1943年4月: Max Newman、Wynn-Williams和他們的研究小組研制成功''Heath Robinson'',這是一臺密碼破譯機(jī),嚴(yán)格說不是一臺計算機(jī)。但是其使用了一些邏輯部件和真空管,其光學(xué)裝置每秒鐘能讀入2000個字符。同樣具有劃時代的意義。 1943年9月 : Williams和Stibitz完成了''Relay Interpolator'',后來命名為''Model II Relay Calculator''。這是一臺可編程計算機(jī)。同樣使用紙帶輸入程序和數(shù)據(jù)。其運(yùn)行更可靠,每個數(shù)用7個繼電器表示,可進(jìn)行浮點(diǎn)運(yùn)算。 1943年12月: 最早的可編程計算機(jī)在英國推出,包括2400個真空管,目的是為了破譯德國的密碼,每秒能翻譯大約5000個字符,但使用完后不久就遭到了毀壞。據(jù)說是因為在翻譯俄語的時候出現(xiàn)了錯誤。 1946: ENIAC (Electronic Numerical Integrator 和 Computer): 第一臺真正意義上的數(shù)字電子計算機(jī)。開始研制于1943年,完成于1946年。負(fù)責(zé)人是John W. Mauchly和J. Presper Eckert。重30噸,18000個電子管,功率25千瓦。主要用于計算彈道和氫彈的研制。 三、晶體管計算機(jī)的發(fā)展 真空管時代的計算機(jī)盡管已經(jīng)步入了現(xiàn)代計算機(jī)的范疇,但其體積之大、能耗之高、故障之多、價格之貴大大制約了它的普及應(yīng)用。直到晶體管被發(fā)明出來,電子計算機(jī)才找到了騰飛的起點(diǎn),一發(fā)而不可收…… 1947: Bell實驗室的William B. Shockley、 John Bardeen和Walter H. Brattain.發(fā)明了晶體管,開辟了電子時代新紀(jì)元。 1949: EDSAC:劍橋大學(xué)的Wilkes和他的小組建成了一臺存儲程序的計算機(jī)。輸入輸出設(shè)備仍是紙帶。 1949: EDVAC (electronic discrete variable computer):第一臺使用磁帶的計算機(jī)。這是一個突破,可以多次在其上存儲程序。這臺機(jī)器是John von Neumann提議建造的。 1949: ''未來的計算機(jī)不會超過1.5噸。''這是當(dāng)時科學(xué)雜志的大膽預(yù)測。 1950~1960 1950: 軟磁盤由東京帝國大學(xué)的Yoshiro Nakamats發(fā)明。其銷售權(quán)由IBM公司獲得。開創(chuàng)存儲時代新紀(jì)元。 1950: 英國數(shù)學(xué)家和計算機(jī)先驅(qū)Alan Turing說:計算機(jī)將會具有人的智慧,如果一個人和一臺機(jī)器對話,對于提出和回答的問題,這個人不能區(qū)別到底對話的是機(jī)器還是人,那么這臺機(jī)器就具有了人的智能。 1951: Grace Murray Hopper完成了高級語言編譯器。 1951: Whirlwind:美國空軍的第一個計算機(jī)控制實時防御系統(tǒng)研制完成。 1951: UNIVAC-1:第一臺商用計算機(jī)系統(tǒng)。設(shè)計者:J. Presper Eckert 和John Mauchly。被美國人口普查部門用于人口普查,標(biāo)志著計算機(jī)的應(yīng)用進(jìn)入了一個新的、商業(yè)應(yīng)用的時代。 1952: EDVAC (Electronic Discrete Variable Computer):由Von Neumann領(lǐng)導(dǎo)設(shè)計并完成。取名:電子離散變量計算機(jī)。 1953: 此時世界上大約有100臺計算機(jī)在運(yùn)轉(zhuǎn)。 1953: 磁芯存儲器被開發(fā)出來。 1954: IBM的John Backus和他的研究小組開始開發(fā) FORTRAN (FORmula TRANslation),1957年完成。是一種適合科學(xué)研究使用的計算機(jī)高級語言。 1956: 第一次有關(guān)人工智能的會議在Dartmouth 學(xué)院召開。 1957: IBM開發(fā)成功第一臺點(diǎn)陣打印機(jī)。 1957: FORTRAN 高級語言開發(fā)成功。 四、集成電路,現(xiàn)代計算機(jī)插上騰飛的翅膀 盡管晶體管的采用大大縮小了計算機(jī)的體積、降低了其價格,減少了故障。但離人們的要求仍差很遠(yuǎn),而且各行業(yè)對計算機(jī)也產(chǎn)生了較大的需求,生產(chǎn)更能更強(qiáng)、更輕便、更便宜的機(jī)器成了當(dāng)務(wù)之急,而集成電路的發(fā)明正如"及時雨",當(dāng)春乃發(fā)生。其高度的集成性,不僅僅使體積得以減小,更使速度加快,故障減少。人們開始制造革命性的微處理器。計算機(jī)技術(shù)經(jīng)過多年的積累,終于駛上了用硅鋪就的高速公路。 1958年9月12日: 在Robert Noyce(INTEL公司的創(chuàng)始人)的領(lǐng)導(dǎo)下,發(fā)明了集成電路。不久又推出了微處理器。但因為在發(fā)明微處理器時借鑒了日本公司的技術(shù),所以日本對其專利不承認(rèn),因為日本沒有得到應(yīng)有的利益。過了30年,日本才承認(rèn),這樣日本公司可以從中得到一部分利潤了。但到2001年,這個專利也就失效了。 1959: 1959年到1964年間設(shè)計的計算機(jī)一般被稱為第二代計算機(jī)。大量采用了晶體管和印刷電路。計算機(jī)體積不斷縮小,功能不斷增強(qiáng),可以運(yùn)行FORTRAN和COBOL ,接收英文字符命令。出現(xiàn)大量應(yīng)用軟件。 1959: Grace Murray Hopper開始開發(fā)COBOL (COmmon Business-Orientated Language)語言,完成于1961年。 1960~1970 1960: ALGOL:第一個結(jié)構(gòu)化程序設(shè)計語言推出。 1961: IBM的Kennth Iverson推出APL編程語言。 1963: PDP-8:DEC公司推出第一臺小型計算機(jī)。 1964: 1964年到1972年的計算機(jī)一般被稱為第三代計算機(jī)。大量使用集成電路,典型的機(jī)型是IBM360系列。 1964: IBM發(fā)布PL/1編程語言。 1964: 發(fā)布IBM 360首套系列兼容機(jī)。 1964: DEC發(fā)布PDB-8 小型計算機(jī)。 1965: 摩爾定律發(fā)表,處理器的性能每年提高一倍。后來其內(nèi)容又發(fā)生了改變。 1965: Lofti Zadeh創(chuàng)立模糊邏輯,用來處理近似值問題。 1965: Thomas E. Kurtz和John Kemeny完成BASIC(Beginners All Purpose Symbolic Instruction Code)語言的開發(fā)。特別適合計算機(jī)教育和初學(xué)者使用,得到了廣泛的推廣。 1965: Douglas Englebart 提出鼠標(biāo)器的設(shè)想,但沒有進(jìn)一步的研究。直到1983年被蘋果電腦公司大量采用。 1965: 第一臺超級計算機(jī)CD6600開發(fā)成功。 1967: Niklaus Wirth開始開發(fā)PASCAL語言,1971年完成。 1968: Robert Noyce和他的幾個朋友創(chuàng)辦了INTEL公司。 1968: Seymour Paper和他的研究小組在MIT開發(fā)了LOGO語言。 1969: ARPANET計劃開始啟動,這是現(xiàn)代INTERNET的雛形。 1969 年4月7日: 第一個網(wǎng)絡(luò)協(xié)議標(biāo)準(zhǔn)RFC推出。 1969: EIA (Electronic Industries Associa 1970~1980 1970: 第一塊RAM芯片由INTEL推出,容量1K。 1970: Ken Thomson和Dennis Ritchie開始開發(fā)UNIX操作系統(tǒng)。 1970: Forth編程語言開發(fā)完成。 1970: Internet的雛形ARPAnet (Advanced Research Projects Agency network) 基本完成。開始向非軍用部門開放,許多大學(xué)和商業(yè)部門開始接入。 1971年11月15日: Marcian E. Hoff在INTEL公司開發(fā)成功第一塊微處理器4004,含2300個晶體管,是個4位系統(tǒng),時鐘頻率108KHz ,每秒執(zhí)行6萬條指令。 在后來的日子里,處理器發(fā)展主要指標(biāo)一覽: 處理器 主頻 每秒百萬條指令 4004 108 KHz 0.06 8080 2MHz 0.5 68000 8MHz 0.7 8086 8MHz 0.8 68000 16 MHz 1.3 68020 16 MHz 2.6 80286 12MHz 2.7 68030 16MHz 3.9 386 SX 20 MHz 6 68030 25 MHz 6.3 68030 40MHz 10 386 DX 33MHz 10 486 DX 25MHz 20 486 DX2-50 50MHz 35 486 DX4/100 100MHz 60 Pentium 66MHz 100 Pentium 133MHz 240 Pentium 233MHz MMX 435 Pentium Pro 200 MHz 440 Pentium II 233MHz 560 Pentium II 333MHz 770 1971: PASCAL語言開發(fā)完成。 1972: 1972年以后的計算機(jī)習(xí)慣上被稱為第四代計算機(jī)。基于大規(guī)模集成電路,及后來的超大規(guī)模集成電路。計算機(jī)功能更強(qiáng),體積更小。人們開始懷疑計算機(jī)能否繼續(xù)縮小,特別是發(fā)熱量問題能否解決?人們開始探討第五代計算機(jī)的開發(fā)。 1972: C語言的開發(fā)完成。其主要設(shè)計者是UNIX系統(tǒng)的開發(fā)者之一 Dennis Ritche。這是一個非常強(qiáng)大的語言,開發(fā)系統(tǒng)軟件,特別受人喜愛。 1972: Hewlett-Packard發(fā)明了第一個手持計算器。 1972年4月1日: INTEL推出8008微處理器。 1972: ARPANET開始走向世界,INTERNET革命拉開序幕。 1973: 街機(jī)游戲Pong發(fā)布,得到廣泛的歡迎。發(fā)明者Nolan Bushnell ,后來Atari 的創(chuàng)立者。 1974: 第一個具有并行計算機(jī)體系結(jié)構(gòu)的CLIP-4推出。 五、計算機(jī)技術(shù)漸入輝煌 在這之前,計算機(jī)技術(shù)主要集中在大型機(jī)和小型機(jī)領(lǐng)域發(fā)展,但隨著超大規(guī)模集成電路和微處理器技術(shù)的進(jìn)步,計算機(jī)進(jìn)入尋常百姓家的技術(shù)障礙已層層突破。特別是從INTEL發(fā)布其面向個人機(jī)的微處理器8080之后,這一浪潮便洶涌澎湃起來,同時也涌現(xiàn)了一大批信息時代的弄潮兒,如喬布斯、比爾.蓋茨等,至今他們對計算機(jī)產(chǎn)業(yè)的發(fā)展還起著舉足輕重的作用。在此時段,互聯(lián)網(wǎng)技術(shù)、多媒體技術(shù)也得到了空前的發(fā)展,計算機(jī)真正開始改變?nèi)藗兊纳睢? 1974年4月1日: INTEL發(fā)布其8位的微處理器芯片8080。 1974年12月: MITS發(fā)布Altair 8800,第一臺商用個人計算機(jī),價值397美元,內(nèi)存有256個字節(jié)。 1975: Bill Gates和Paul Allen完成了第一個在MITS 的Altair計算機(jī)上運(yùn)行的BASIC程序。 1975: IBM公司介紹了他的激光打印機(jī)技術(shù)。1988年向市場推出其彩色激光打印機(jī)。 1975: Bill Gates和Paul Allen創(chuàng)辦MicorSoft公司,F(xiàn)在成為最大、最成功的軟件公司。三年后就收入50萬美元,增加到15個人。1992年達(dá)28億美元,1萬名雇員。其最大的突破性發(fā)展是在1981年為IBM 的PC機(jī)開發(fā)操作系統(tǒng),從此后便開始了對計算機(jī)業(yè)的巨大影響。 1975: IBM 5100發(fā)布。 1976: Stephen Wozinak和Stephen Jobs創(chuàng)辦蘋果計算機(jī)公司。并推出其Apple I 計算機(jī)。 1976: Zilog推出Z80處理器。8位微處理器。 CP/M就是面向其開發(fā)的操作系統(tǒng)。許多著名的軟件如:Wordstar 和dBase II基于此款處理器。 1976: 6502, 8 位微處理器發(fā)布,專為Apple II計算機(jī)使用。 1976: Cray 1,第一臺商用超級計算機(jī)。集成了20萬個晶體管,每秒進(jìn)行1.5億次浮點(diǎn)運(yùn)算。 1977年5月: Apple II 型計算機(jī)發(fā)布。 1978: Commodore Pet發(fā)布:有 8K RAM,盒式磁帶機(jī),9英寸顯示器。 1978年6月8日: INTEL發(fā)布其16位微處理器8086。但因其非常昂貴,又推出8位的8088滿足市場對低價處理器的需要,并被IBM的第一代PC機(jī)所采用。其可用的時鐘頻率為4.77、8、10MHz。大約有300條指令,集成了29000更晶體管。 1979: 街機(jī)游戲''太空入侵者''發(fā)布,引起轟動。很快便使得類似的游戲機(jī)大規(guī)模流行起來,其收入超過了美國電影業(yè)。 1979: Jean Ichbiah 開發(fā)完成Ada計算機(jī)語言。 1979年6月1日: INTEL發(fā)布了8位的8088微處理器,純粹為了迎合低價電腦的需要。 1979: Commodore PET 發(fā)布了采用1MHz的6502處理器,單色顯示器、8K內(nèi)存的計算機(jī),并且可以根據(jù)需要購買更多的內(nèi)存擴(kuò)充。 1979: 發(fā)明了低密盤。 1979: Motorola公司發(fā)布68000微處理器。主要供應(yīng)Apple公司的Macintosh ,后繼產(chǎn)品68020用在Macintosh II機(jī)型上。 1979: IBM公司眼看著個人計算機(jī)市場被蘋果等電腦公司占有,決定也開發(fā)自己的個人計算機(jī),為了盡快的推出自己的產(chǎn)品,他們大量的工作是與第三方合作,其中微軟公司就承擔(dān)了其操作系統(tǒng)的開發(fā)工作。很快他們便在1981年8月12日推出了IBM-PC。但同時也為微軟后來的崛起,施足了肥料。 1980~1990 1980:"只要有1兆內(nèi)存就足夠DOS盡情表演了"。微軟公司開發(fā)DOS初期時說。今天來聽這句話有何感想呢? 1980年10月: MS-DOS/PC-DOS開發(fā)工作開始了。但微軟并沒有自己獨(dú)立的操作系統(tǒng),他們買來別人的操作系統(tǒng)并加以改進(jìn)。但I(xiàn)BM測試時竟發(fā)現(xiàn)有300個BUG。于是他們又繼續(xù)改進(jìn),最初的DOS1.0有4000行匯編程序。 1981: Xerox開始致力于圖形用戶界面、圖標(biāo)、菜單和定位設(shè)備(如鼠標(biāo))的研制。結(jié)果研究成果為蘋果所借鑒。而蘋果電腦公司后來又指控微軟剽竊了他們的設(shè)計,開發(fā)了WINDOWS系列軟件。 1981: INTEL發(fā)布的80186/80188芯片,很少被人使用,因為其寄存器等與其他不兼容。但其采用了直接存儲器訪問技術(shù)和時間片分時技術(shù)。 1981年8月12日: IBM發(fā)布其個人計算機(jī),售價2880美元。該機(jī)有64K內(nèi)存、單色顯示器、可選的盒式磁帶驅(qū)動器、兩個160KB單面 原理 個人電腦的主要結(jié)構(gòu): 顯示器 主板 CPU (中央處理器) 主要儲存器 (內(nèi)存) 擴(kuò)充卡 電源供應(yīng)器 光驅(qū) 次要儲存器 (硬盤) 鍵盤 鼠標(biāo) 盡管計算機(jī)技術(shù)自20世紀(jì)40年代第一臺電子通用計算機(jī)誕生以來以來有了令人目眩的飛速發(fā)展,但是今天計算機(jī)仍然基本上采用的是存儲程序結(jié)構(gòu),即馮·諾伊曼結(jié)構(gòu)。這個結(jié)構(gòu)實現(xiàn)了實用化的通用計算機(jī)。 存儲程序結(jié)構(gòu)間將一臺計算機(jī)描述成四個主要部分:算術(shù)邏輯單元(ALU),控制電路,存儲器,以及輸入輸出設(shè)備(I/O)。這些部件通過一組一組的排線連接(特別地,當(dāng)一組線被用于多種不同意圖的數(shù)據(jù)傳輸時又被稱為總線),并且由一個時鐘來驅(qū)動(當(dāng)然某些其他事件也可能驅(qū)動控制電路)。 概念上講,一部計算機(jī)的存儲器可以被視為一組“細(xì)胞”單元。每一個“細(xì)胞”都有一個編號,稱為地址;又都可以存儲一個較小的定長信息。這個信息既可以是指令(告訴計算機(jī)去做什么),也可以是數(shù)據(jù)(指令的處理對象)。原則上,每一個“細(xì)胞”都是可以存儲二者之任一的。 算術(shù)邏輯單元(ALU)可以被稱作計算機(jī)的大腦。它可以做兩類運(yùn)算:第一類是算術(shù)運(yùn)算,比如對兩個數(shù)字進(jìn)行加減法。算術(shù)運(yùn)算部件的功能在ALU中是十分有限的,事實上,一些ALU根本不支持電路級的乘法和除法運(yùn)算(由是使用者只能通過編程進(jìn)行乘除法運(yùn)算)。第二類是比較運(yùn)算,即給定兩個數(shù),ALU對其進(jìn)行比較以確定哪個更大一些。 輸入輸出系統(tǒng)是計算機(jī)從外部世界接收信息和向外部世界反饋運(yùn)算結(jié)果的手段。對于一臺標(biāo)準(zhǔn)的個人電腦,輸入設(shè)備主要有鍵盤和鼠標(biāo),輸出設(shè)備則是顯示器,打印機(jī)以及其他許多后文將要討論的可連接到計算機(jī)上的I/O設(shè)備。 控制系統(tǒng)將以上計算機(jī)各部分聯(lián)系起來。它的功能是從存儲器和輸入輸出設(shè)備中讀取指令和數(shù)據(jù),對指令進(jìn)行解碼,并向ALU交付符合指令要求的正確輸入,告知ALU對這些數(shù)據(jù)做哪些運(yùn)算并將結(jié)果數(shù)據(jù)返回到何處?刂葡到y(tǒng)中一個重要組件就是一個用來保持跟蹤當(dāng)前指令所在地址的計數(shù)器。通常這個計數(shù)器隨著指令的執(zhí)行而累加,但有時如果指令指示進(jìn)行跳轉(zhuǎn)則不依此規(guī)則。 20世紀(jì)80年代以來ALU和控制單元(二者合成中央處理器,CPU)逐漸被整合到一塊集成電路上,稱作微處理器。這類計算機(jī)的工作模式十分直觀:在一個時鐘周期內(nèi),計算機(jī)先從存儲器中獲取指令和數(shù)據(jù),然后執(zhí)行指令,存儲數(shù)據(jù),再獲取下一條指令。這個過程被反復(fù)執(zhí)行,直至得到一個終止指令。 由控制器解釋,運(yùn)算器執(zhí)行的指令集是一個精心定義的數(shù)目十分有限的簡單指令集合。一般可以分為四類:1)、數(shù)據(jù)移動(如:將一個數(shù)值從存儲單元A拷貝到存儲單元B)2)、數(shù)邏運(yùn)算(如:計算存儲單元A與存儲單元B之和,結(jié)果返回存儲單元C)3)、條件驗證(如:如果存儲單元A內(nèi)數(shù)值為100,則下一條指令地址為存儲單元F)4)、指令序列改易(如:下一條指令地址為存儲單元F) 指令如同數(shù)據(jù)一樣在計算機(jī)內(nèi)部是以二進(jìn)制來表示的。比如說,10110000就是一條Intel x86系列微處理器的拷貝指令代碼。某一個計算機(jī)所支持的指令集就是該計算機(jī)的機(jī)器語言。因此,使用流行的機(jī)器語言將會使既成軟件在一臺新計算機(jī)上運(yùn)行得更加容易。所以對于那些機(jī)型商業(yè)化軟件開發(fā)的人來說,它們通常只會關(guān)注一種或幾種不同的機(jī)器語言。 更加強(qiáng)大的小型計算機(jī),大型計算機(jī)和服務(wù)器可能會與上述計算機(jī)有所不同。它們通常將任務(wù)分擔(dān)給不同的CPU來執(zhí)行。今天,微處理器和多核個人電腦也在朝這個方向發(fā)展。 超級計算機(jī)通常有著與基本的存儲程序計算機(jī)顯著區(qū)別的體系結(jié)構(gòu)。它們通常有著數(shù)以千計的CPU,不過這些設(shè)計似乎只對特定任務(wù)有用。在各種計算機(jī)中,還有一些微控制器采用令程序和數(shù)據(jù)分離的哈佛架構(gòu)(Harvard architecture)。 計算機(jī)的數(shù)字電路實現(xiàn) 以上所說的這些概念性設(shè)計的物理實現(xiàn)是多種多樣的。如同我們前述所及,一臺存儲程序式計算機(jī)既可以是巴比奇的機(jī)械式的,也可以是基于數(shù)字電子的。但是,數(shù)字電路可以通過諸如繼電器之類的電子控制開關(guān)來實現(xiàn)使用2進(jìn)制數(shù)的算術(shù)和邏輯運(yùn)算。香農(nóng)的論文正是向我們展示了如何排列繼電器來組成能夠?qū)崿F(xiàn)簡單布爾運(yùn)算的邏輯門。其他一些學(xué)者很快指出使用真空管可以代替繼電器電路。真空管最初被用作無線電電路中的放大器,之后便開始被越來越多地用作數(shù)字電子電路中的快速開關(guān)。當(dāng)電子管的一個針腳被通電后,電流就可以在另外兩端間自由通過。 通過邏輯門的排列組合我們可以設(shè)計完成很多復(fù)雜的任務(wù)。舉例而言,加法器就是其中之一。該器件在電子領(lǐng)域?qū)崿F(xiàn)了兩個數(shù)相加并將結(jié)果保存下來—在計算機(jī)科學(xué)中這樣一個通過一組運(yùn)算來實現(xiàn)某個特定意圖的方法被稱做一個算法。最終,人們通過數(shù)量可觀的邏輯門電路組裝成功了完整的ALU和控制器。說它數(shù)量可觀,只需看一下CSIRAC這臺可能是最小的實用化電子管計算機(jī)。該機(jī)含有2000個電子管,其中還有不少是雙用器件,也即是說總計合有2000到4000個邏輯器件。 真空管對于制造規(guī)模龐大的門電路明顯力不從心。昂貴,不穩(wěn)(尤其是數(shù)量多時),臃腫,能耗高,并且速度也不夠快—盡管遠(yuǎn)超機(jī)械開關(guān)電路。這一切導(dǎo)致20世紀(jì)60年代它們被晶體管取代。后者體積更小,易于操作,可靠性高,更省能耗,同時成本也更低。 集成電路是現(xiàn)今電子計算機(jī)的基礎(chǔ)20世紀(jì)60年代后,晶體管開始逐漸為將大量晶體管、其他各種電器元件和連接導(dǎo)線安置在一片硅板上的集成電路所取代。70年代,ALU和控制器作為組成CPU的兩大部分,開始被集成到一塊芯片上,并稱為“微處理器”。沿著集成電路的發(fā)展史,可以看到一片芯片上所集成器件的數(shù)量有了飛速增長。第一塊集成電路只不過包含幾十個部件,而到了2006年,一塊Intel Core Duo處理器上的晶體管數(shù)目高達(dá)一億五千一百萬之巨。 無論是電子管,晶體管還是集成電路,它們都可以通過使用一種觸發(fā)器設(shè)計機(jī)制來用作存儲程序體系結(jié)構(gòu)中的“存儲”部件。而事實上觸發(fā)器的確被用作小規(guī)模的超高速存儲。但是,幾乎沒有任何計算機(jī)設(shè)計使用觸發(fā)器來進(jìn)行大規(guī)模數(shù)據(jù)存儲。最早的計算機(jī)是使用Williams電子管向一個電視屏或若干條水銀延遲線(聲波通過這種線時的走行速度極為緩慢足夠被認(rèn)為是“存儲”在了上面)發(fā)射電子束然后再來讀取的方式來存儲數(shù)據(jù)的。當(dāng)然,這些盡管有效卻不怎么優(yōu)雅的方法最終還是被磁性存儲取而代之。比如說磁芯存儲器,代表信息的電流可在其中的鐵質(zhì)材料內(nèi)制造恒久的弱磁場,當(dāng)這個磁場再被讀出時就實現(xiàn)了數(shù)據(jù)恢復(fù)。動態(tài)隨機(jī)存儲器(DRAM)亦被發(fā)明出來。它是一個包含大量電容的集成電路,而這些電容器件正是負(fù)責(zé)存儲數(shù)據(jù)電荷—電荷的強(qiáng)度則被定義為數(shù)據(jù)的值。 輸入輸出設(shè)備 輸入輸出設(shè)備(I/O)是對將外部世界信息發(fā)送給計算機(jī)的設(shè)備和將處理結(jié)果返回給外部世界的設(shè)備的總稱。這些返回結(jié)果可能是作為使用者能夠視覺上體驗的,或是作為該計算機(jī)所控制的其他設(shè)備的輸入:對于一臺機(jī)器人,控制計算機(jī)的輸出基本上就是這臺機(jī)器人本身,如做出各種行為。 第一代計算機(jī)的輸入輸出設(shè)備種類非常有限。通常的輸入用設(shè)備是打孔卡片的讀卡機(jī),用來將指令和數(shù)據(jù)導(dǎo)入內(nèi)存;而用于存儲結(jié)果的輸出設(shè)備則一般是磁帶。隨著科技的進(jìn)步,輸入輸出設(shè)備的豐富性得到提高。以個人計算機(jī)為例:鍵盤和鼠標(biāo)是用戶向計算機(jī)直接輸入信息的主要工具,而顯示器、打印機(jī)、擴(kuò)音器、耳機(jī)則返回處理結(jié)果。此外還有許多輸入設(shè)備可以接受其他不同種類的信息,如數(shù)碼相機(jī)可以輸入圖像。在輸入輸出設(shè)備中,有兩類很值得注意:第一類是二級存儲設(shè)備,如硬盤,光碟或其他速度緩慢但擁有很高容量的設(shè)備。第二個是計算機(jī)網(wǎng)絡(luò)訪問設(shè)備,通過他們而實現(xiàn)的計算機(jī)間直接數(shù)據(jù)傳送極大地提升了計算機(jī)的價值。今天,國際互聯(lián)網(wǎng)成就了數(shù)以千萬計的計算機(jī)彼此間傳送各種類型的數(shù)據(jù)。 程序 簡單說,計算機(jī)程序就是計算機(jī)執(zhí)行指令的一個序列。它既可以只是幾條執(zhí)行某個簡單任務(wù)的指令,也可能是可能要操作巨大數(shù)據(jù)量的復(fù)雜指令隊列。許多計算機(jī)程序包含有百萬計的指令,而其中很多指令可能被反復(fù)執(zhí)行。在2005年,一臺典型的個人電腦可以每秒執(zhí)行大約30億條指令。計算機(jī)通常并不會執(zhí)行一些很復(fù)雜的指令來獲得額外的機(jī)能,更多地它們是在按照程序員的排列來運(yùn)行那些較簡單但為數(shù)眾多的短指令。 一般情況下,程序員們是不會直接用機(jī)器語言來為計算機(jī)寫入指令的。那么做的結(jié)果只能是費(fèi)時費(fèi)力、效率低下而且漏洞百出。所以,程序員一般通過“高級”一些的語言來寫程序,然后再由某些特別的計算機(jī)程序,如解釋器或編譯器將之翻譯成機(jī)器語言。一些編程語言看起來很接近機(jī)器語言,如匯編程序,被認(rèn)為是低級語言。而另一些語言,如即如抽象原則的Prolog,則完全無視計算機(jī)實際運(yùn)行的操作細(xì)節(jié),可謂是高級語言。對于一項特定任務(wù),應(yīng)該根據(jù)其事務(wù)特點(diǎn),程序員技能,可用工具和客戶需求來選擇相應(yīng)的語言,其中又以客戶需求最為重要(美國和中國軍隊的工程項目通常被要求使用Ada語言)。 計算機(jī)軟件是與計算機(jī)程序并不相等的另一個詞匯。計算機(jī)軟件一個較為包容性較強(qiáng)的技術(shù)術(shù)語,它包含了用于完成任務(wù)的各種程序以及所有相關(guān)材料。舉例說,一個視頻游戲不但只包含程序本身,也包括圖片、聲音以及其他創(chuàng)造虛擬游戲環(huán)境的數(shù)據(jù)內(nèi)容。在零售市場,在一臺計算機(jī)上的某個應(yīng)用程序只是一個面向大量用戶的軟件的一個副本。這里老生常談的例子當(dāng)然還是微軟的office軟件組,它包括一些列互相關(guān)聯(lián)的、面向一般辦公需求的程序。 利用那些極其簡單的機(jī)器語言指令來實現(xiàn)無數(shù)功能強(qiáng)大的應(yīng)用軟件意味著其編程規(guī)模注定不小。Windows XP這個操作系統(tǒng)程序包含的C++高級語言源代碼達(dá)到了4000萬行。當(dāng)然這還不是最大的。如此龐大的軟件規(guī)模也顯示了管理在開發(fā)過程中的重要性。實際編程時,程序會被細(xì)分到每一個程序員都可以在一個可接受的時長內(nèi)完成的規(guī)模。 即便如此,軟件開發(fā)的過程仍然進(jìn)程緩慢,不可預(yù)見且遺漏多多。應(yīng)運(yùn)而生的軟件工程學(xué)就重點(diǎn)面向如何加快作業(yè)進(jìn)度和提高效率與質(zhì)量。 庫與操作系統(tǒng) 在計算機(jī)誕生后不久,人們發(fā)現(xiàn)某些特定作業(yè)在許多不同的程序中都要被實施,比如說計算某些標(biāo)準(zhǔn)數(shù)學(xué)函數(shù)。出于效率考量,這些程序的標(biāo)準(zhǔn)版本就被收集到一個“庫”中以供各程序調(diào)用。許多任務(wù)經(jīng)常要去額外處理種類繁多的輸入輸出接口,這時,用于連接的庫就能派上用場。 20世紀(jì)60年代,隨著計算機(jī)工業(yè)化普及,計算機(jī)越來越多地被用作一個組織內(nèi)不同作業(yè)的處理。很快,能夠自動安排作業(yè)時續(xù)和執(zhí)行的特殊軟件出現(xiàn)了。這些既控制硬件又負(fù)責(zé)作業(yè)時序安排的軟件被稱為“操作系統(tǒng)”。一個早期操作系統(tǒng)的例子是IBM的OS/360。 在不斷地完善中,操作系統(tǒng)又引入了時間共享機(jī)制——并發(fā)。這使得多個不同用戶可以“同時”地使用機(jī)器執(zhí)行他們自己的程序,看起來就像是每個人都有一臺自己的計算機(jī)。為此,操作系統(tǒng)需要像每個用戶提供一臺“虛擬機(jī)”來分離各個不同的程序。由于需要操作系統(tǒng)控制的設(shè)備也在不斷增加,其中之一便是硬盤。因之,操作系統(tǒng)又引入了文件管理和目錄管理(文件夾),大大簡化了這類永久儲存性設(shè)備的應(yīng)用。此外,操作系統(tǒng)也負(fù)責(zé)安全控制,確保用戶只能訪問那些已獲得允許的文件。 當(dāng)然,到目前為止操作系統(tǒng)發(fā)展歷程中最后一個重要步驟就是為程序提供標(biāo)準(zhǔn)圖形用戶界面(GUI)。盡管沒有什么技術(shù)原因表明操作系統(tǒng)必須得提供這些界面,但操作系統(tǒng)供應(yīng)商們總是希望并鼓勵那些運(yùn)行在其系統(tǒng)上的軟件能夠在外觀和行為特征上與操作系統(tǒng)保持一致或相似。 除了以上這些核心功能,操作系統(tǒng)還封裝了一系列其他常用工具。其中一些雖然對計算機(jī)管理并無重大意義,但是于用戶而言很是有用。比如,蘋果公司的Mac OS X就包含視頻剪輯應(yīng)用程序。 一些用于更小規(guī)模的計算機(jī)的操作系統(tǒng)可能沒用如此眾多的功能。早期的微型計算機(jī)由于記憶體和處理能力有限而不會提供額外功能,而嵌入式計算機(jī)則使用特定化了的操作系統(tǒng)或者干脆沒有,它們往往通過應(yīng)用程序直接代理操作系統(tǒng)的某些功能。 應(yīng)用 由電腦控制的機(jī)械在工業(yè)中十分常見 很多現(xiàn)代大量生產(chǎn)的玩具,如Furby,是不能沒有便宜的嵌入式處理器 起初,體積龐大而價格昂貴的數(shù)字計算機(jī)主要是用做執(zhí)行科學(xué)計算,特別是軍用課題。如ENIAC最早就是被用作火炮彈道計算和設(shè)計氫彈時計算斷面中子密度的(如今許多超級計算機(jī)仍然在模擬核試驗方面發(fā)揮著巨大作用)。澳大利亞設(shè)計的首臺存儲程序計算機(jī)CSIR Mk I型負(fù)責(zé)對水電工程中的集水地帶的降雨情形進(jìn)行評估。還有一些被用于解密,比如英國的“巨像”可編程計算機(jī)。除去這些早年的科學(xué)或軍工應(yīng)用,計算機(jī)在其他領(lǐng)域的推廣亦十分迅速。 從一開始,存儲程序計算機(jī)就與商業(yè)問題的解決息息相關(guān)。早在IBM的第一臺商用計算機(jī)誕生之前,英國J. Lyons等就設(shè)計制造了LEO以進(jìn)行資產(chǎn)管理或迎合其他商業(yè)用途。由于持續(xù)的體積與成本控制,計算機(jī)開始向更小型的組織內(nèi)普及。加之20世紀(jì)70年代微處理器的發(fā)明,廉價計算機(jī)成為了現(xiàn)實。80年代,個人計算機(jī)全面流行,電子文檔寫作與印刷,計算預(yù)算和其他重復(fù)性的報表作業(yè)越來越多地開始依賴計算機(jī)。 隨著計算機(jī)便宜起來,創(chuàng)作性的藝術(shù)工作也開始使用它們。人們利用合成器,計算機(jī)圖形和動畫來創(chuàng)作和修改聲音,圖像,視頻。視頻游戲的產(chǎn)業(yè)化也說明了計算機(jī)在娛樂方面也開創(chuàng)了新的歷史。 計算機(jī)小型化以來,機(jī)械設(shè)備的控制也開始仰仗計算機(jī)的支持。其實,正是當(dāng)年為了建造足夠小的嵌入式計算機(jī)來控制阿波羅宇宙飛船才刺激了集成電路技術(shù)的躍進(jìn)。今天想要找一臺不被計算機(jī)控制的有源機(jī)械設(shè)備要比找一臺哪怕是部分計算機(jī)控制的設(shè)備要難得多?赡茏钪挠嬎銠C(jī)控制設(shè)備要非機(jī)器人莫屬,這些機(jī)器有著或多或少人類的外表和并具備人類行為的某一子集。在批量生產(chǎn)中,工業(yè)機(jī)器人已是尋常之物。不過,完全的擬人機(jī)器人還只是停留在科幻小說或?qū)嶒炇抑小?BR> 機(jī)器人技術(shù)實質(zhì)上是人工智能領(lǐng)域中的物理表達(dá)環(huán)節(jié)。所謂人工智能是一個定義模糊的概念但是可以肯定的是這門學(xué)科試圖令計算機(jī)擁有目前它們還沒有但作為人類卻固有的能力。數(shù)年以來,不斷有許多新方法被開發(fā)出來以允許計算機(jī)做那些之前被認(rèn)為只有人才能做的事情。比如讀書、下棋。然而,到目前為止,在研制具有人類的一般“整體性”智能的計算機(jī)方面,進(jìn)展仍十分緩慢。 網(wǎng)絡(luò)、國際互聯(lián)網(wǎng) 20世紀(jì)50年代以來計算機(jī)開始用作協(xié)調(diào)來自不同地方之信息的工具,美國軍方的賢者系統(tǒng)(SAGE)就是這方面第一個大規(guī)模系統(tǒng)。之后“軍刀”等一系列特殊用途的商業(yè)系統(tǒng)也不斷涌現(xiàn)出來。 70年代后,美國各大院校的計算機(jī)工程師開始使用電信技術(shù)把他們的計算機(jī)連接起來。由于這方面的工作得到了ARPA的贊助,其計算機(jī)網(wǎng)絡(luò)也就被稱為ARPANET。此后,用于ARPA網(wǎng)的技術(shù)快速擴(kuò)散和進(jìn)化,這個網(wǎng)絡(luò)也沖破大學(xué)和軍隊的范圍最終形成了今天的國際互聯(lián)網(wǎng)(Internet)。網(wǎng)絡(luò)的出現(xiàn)導(dǎo)致了對計算機(jī)屬性和邊界的再定義。太陽微系統(tǒng)公司的John Gage 和 Bill Joy就指出:“網(wǎng)絡(luò)即是計算機(jī)”。計算機(jī)操作系統(tǒng)和應(yīng)用程序紛紛向能訪問諸如網(wǎng)內(nèi)其它計算機(jī)等網(wǎng)絡(luò)資源的方向發(fā)展。最初這些網(wǎng)絡(luò)設(shè)備僅限于為高端科學(xué)工作者所使用,但90年代后隨著電子郵件和萬維網(wǎng)(World Wide Web)技術(shù)的擴(kuò)散,以及以太網(wǎng)和ADSL等網(wǎng)絡(luò)連接技術(shù)的廉價化,互聯(lián)網(wǎng)絡(luò)已變得無所不在。今日入網(wǎng)的計算機(jī)總數(shù),何以千萬計;無線互聯(lián)技術(shù)的普及,使得互聯(lián)網(wǎng)在移動計算環(huán)境中亦如影隨形。比如在筆記本計算機(jī)上廣泛使用的Wi-Fi技術(shù)就是無線上網(wǎng)的代表性應(yīng)用。 下一代計算機(jī) 自問世以來數(shù)字計算機(jī)在速度和能力上有了可觀的提升,迄今仍有不少課題顯得超出了當(dāng)前計算機(jī)的能力所及。對于其中一部分課題,傳統(tǒng)計算機(jī)是無論如何也不可能實現(xiàn)的,因為找到一個解決方法的時間還趕不上問題規(guī)模的擴(kuò)展速度。因此,科學(xué)家開始將目光轉(zhuǎn)向生物計算技術(shù)和量子理論來解決這一類問題。比如,人們計劃用生物性的處理來解決特定問題(DNA計算)。由于細(xì)胞分裂的指數(shù)級增長方式,DNA計算系統(tǒng)很有可能具備解決同等規(guī)模問題的能力。當(dāng)然,這樣一個系統(tǒng)直接受限于可控制的DNA總量。 量子計算機(jī),顧名思義,利用了量子物理世界的超常特性。一旦能夠造出量子計算機(jī),那么它在速度上的提升將令一般計算機(jī)難以望其項背。當(dāng)然,這種涉及密碼學(xué)和量子物理模擬的下一代計算機(jī)還只是停留在構(gòu)想階段。 計算機(jī)學(xué)科 在當(dāng)今世界,幾乎所有專業(yè)都與計算機(jī)息息相關(guān)。但是,只有某些特定職業(yè)和學(xué)科才會深入研究計算機(jī)本身的制造、編程和使用技術(shù)。用來詮釋計算機(jī)學(xué)科內(nèi)不同研究領(lǐng)域的各個學(xué)術(shù)名詞的涵義不斷發(fā)生變化,同時新學(xué)科也層出不窮。 計算機(jī)工程學(xué) 是電子工程的一個分支,主要研究計算機(jī)軟硬件和二者間的彼此聯(lián)系。 計算機(jī)科學(xué) 是對計算機(jī)進(jìn)行學(xué)術(shù)研究的傳統(tǒng)稱謂。主要研究計算技術(shù)和執(zhí)行特定任務(wù)的高效算法。該門學(xué)科為我們解決確定一個問題在計算機(jī)領(lǐng)域內(nèi)是否可解,如可解其效率如何,以及如何作成更加高效率的程序。時至今日,在計算機(jī)科學(xué)內(nèi)已經(jīng)衍生了許多分支,每一個分支都針對不同類別的問題進(jìn)行深入研究。 軟件工程學(xué) 著重于研究開發(fā)高質(zhì)量軟件系統(tǒng)的方法學(xué)和實踐方式,并試圖壓縮并預(yù)測開發(fā)成本及開發(fā)周期。 信息系統(tǒng) 研究計算機(jī)在一個廣泛的有組織環(huán)境(商業(yè)為主)中的計算機(jī)應(yīng)用。 許多學(xué)科都與其他學(xué)科相互交織。如地理信息系統(tǒng)專家就是利用計算機(jī)技術(shù)來管理地理信息。 全球有三個較大規(guī)模的致力于計算機(jī)科學(xué)的組織:英國電腦學(xué)會 (BCS);美國計算機(jī)協(xié)會(ACM);美國電氣電子工程師協(xié)會(IEEE)。
移動通信網(wǎng) | 通信人才網(wǎng) | 更新日志 | 團(tuán)隊博客 | 免責(zé)聲明 | 關(guān)于詞典 | 幫助