計算機原理

計算機原理

計算機原理由馮·諾依曼(Von Neumann)與莫爾小組於1943年—1946年提出。在人類科技史上還沒有一種科學可以與計算機的發展之快相提並論。計算機原理適用於科學計算、信息管理等領域。

基本介紹

  • 中文名:計算機原理
  • 外文名:computertheory
  • 提出者馮·諾依曼(Von Neumann)與莫爾小組
  • 提出時間:1943——1946
  • 套用學科:計算機
  • 適用領域範圍:科學計算
  • 適用領域範圍:信息管理
發展簡史,諾依曼機,發展階段,第一代,第二代,第三代,第四代,分類,大型機,巨型機,小型機,微型機,主要套用,系統構成,硬體系統,軟體系統,工作過程,PC組成,計算機原理人話版,

發展簡史

1943——1946年美國賓夕法尼亞大學研製的電子數字積分器和計算機ENIAC(Electronic Numerical And Computer)是世界上第一台電子多用途計算機。一般認為它是現代計算機的始祖。
早期計算機早期計算機
與ENIAC計算機研製的同時,馮·諾依曼(Von Neumann)與莫爾小組合作研製EDVAC計算機,採用了存儲程式方案,其後開發的計算機都採用這種方式,稱為馮·諾依曼計算機。

諾依曼機

Von Neumann具有以下特點:
(1)計算機由運算器、控制器、存儲器、輸入設備和輸出設備五部分組成。
馮·諾依曼馮·諾依曼
(2)採用存儲程式的方式,程式和數據放在同一個存儲器中,指令和數據一樣可以送到運算器運算,即由指令組成的程式是可以修改的。
(3)數據以二進制代碼表示。
(4)指令由操作碼地址碼組成。
(5)指令在存儲器中按執行順序存放,由指令計數器指明要執行的指令所在的單元地址,一般按順序遞增,但可按運算結果或外界條件而改變。
(6)機器以運算器為中心,輸入輸出設備與存儲器間的數據傳送都通過運算器。
現代計算機系統結構有了很大新發展,但原則上變化不大,習慣上仍稱之為馮·諾依曼機。

發展階段

根據計算機所採用的物理器件的發展,一般把電子計算機的發展分成四個階段,習慣上稱為四代。

第一代

電子管計算機時代(從1946年到50年代後期),其主要特點是採用電子管作為基礎器件。代表機型IBM公司的IBM650。

第二代

電晶體計算機時代(從50年代中期到60年代後期),採用的主要器件逐步由電子管改為電晶體,縮小了體積,降低了功耗,提高了速度和可靠性,降低了價格。代表機型控制數據公司(CDC)的大型計算機系統CDC6600.

第三代

積體電路計算機時代(從60年代中期到70年代前期),計算機採用積體電路作為基本器件,功耗、體積、價格進一步下降,速度和可靠性相應的提高。代表機型IBM公司的IBM360.

第四代

大規模積體電路計算機時代(從70年代初至今),70年代初,半導體存儲器問世,迅速取代了磁芯存儲器,並不斷向大容量、高速度發展。1984年內含2300個電晶體的Intel4004晶片問世,開啟了現代計算機的篇章。

分類

大型機

大型機是反映各個時期先進計算技術的大型通用計算機,其中以IBM公司的大型機系列影響最大。60年代的IBM360系統,70年代和80年代的IBM370系統曾占領大型機的主要市場。90年代IBM推出的大型機系列為IBMS/390系列,都是大型機的代表之作。
計算機系統構成計算機系統構成

巨型機

現代科學技術,尤其是國防技術的發展,需要有很高運算速度、很大存儲容量的計算機,一般大型通用計算機不能滿足要求。積體電路的進展,為製造巨型機提供了條件。微處理器的發展為陣列結構的巨型機發展帶來了希望。如古德伊爾公司為美國宇航局(NASA)研製了一台處理衛星圖像的計算機系統MPP,該機由16384個微處理器組成128*128方陣。

小型機

小型機規模小、結構簡單所以設計試製周期短,便於及時採用先進工藝,生產量大,硬體成本低。小型機的出現打開了再控制領域套用計算機的局面,許多大型分析儀器、測量儀器使用小型機進行數據採集、整理、分析、計算等。
硬體系統硬體系統

微型機

微型機的出現與發展,掀起計算機大普及的浪潮,利用4位微處理器Intel 4004組成的MCS-4是世界上第一台微型機,它於1971年問世。我們工作學習生活中用的PC就是微型機。1978年Intel成功開發了16位微處理器Intel8086。1981年32位微處理器Intel80386問世。隨著技術的不斷發展,已經進入64位雙核微處理器時代。其它還有工程工作站、在線上系統和計算機網路,這些就不再贅述,有興趣的讀者可以自己搜尋資料。
系統匯流排系統匯流排
這裡所說的計算機原理,主要以微型機為主,因為微型機與我們的生活關係最為密切。

主要套用

1、科學計算
2、過程控制
CPUCPU
3、信息管理
5、計算機輔助教學、設計、製造
6、儀器儀表與家電控制
7 電子遊戲,看視頻,購物
計算機的主要套用
數據可分為數值數據和非數值數據兩大類。從計算機所處理數據的類型這個角度來看,計算機的套用原則上應該分成科學計算和非數值計算兩大類。後者包括信息處理、過程控制計算機輔助設計、計算機輔助教學、人工智慧等,其套用範圍遠遠超過前者。計算機的套用已形成了一門專門的學科,它主要包括以下幾方面的內容:
1.科學計算即純數值計算,主要是解決科學研究領域的一些複雜的數學問題,計算量大而且精度要求高。例如:氣象預報人造衛星軌道的計算等都屬於這方面的套用。
I/O接口I/O接口
2.過程控制
過程控制是指利用計算機對生產或其他過程中的數據及時採集,並按最佳方案實現自動化。過程控制可以提高自動化程度,減輕勞動強度、提高生產效率、降低生產成本,保證產品質量的穩定。
3.信息處理
信息處理是目前計算機套用最廣泛的領域之一。信息處理是指用計算機對各種形式的信息(如文字、圖像、聲音等)收集、存儲、加工、分析和傳送的過程。當今社會,計算機在信息處理領域的套用,對辦公自動化、管理自動化乃至社會信息化都起著積極的促進作用。
鍵盤鍵盤
4.計算機輔助系統
1)計算機輔助設計
計算機輔助設計簡稱為CAD(ComputerAidedDesign),它是利用計算機幫助人們進行各種工程和複雜產品的設計。CAD技術不僅提高了設計質量,而且也提高了自動化程度,大大縮短了新產品的設計與試製周期,從而成為生產現代化的重要手段。
2)計算機輔助製造計算機輔助製造簡稱為CAM(ComputerAidedManufacturing)。它是利用計算機直接控制零件的加工,實現無圖紙加工。
計算機工作過程計算機工作過程
3)計算機輔助教學
計算機輔助教學簡稱為CAI(ComputerAssistedInstruction)。它是指利用多媒體和網路技術,使得網上教學和遠程教學得以實現。利用CAI,可將課程內容編成圖文並茂的軟體,使教學過程更加形象化。對於不同程度的學生可以自主選擇不同的教學內容和教學進度,改變了教學的單一模式。

系統構成

計算機系統構成
由上圖我們可以看出,計算機系統包含硬體系統和軟體系統,硬體系統是計算機的基礎,軟體系統是計算機的上層建築。一個完整的計算機系統必須包含硬體系統和軟體系統,只有硬體系統沒有軟體系統的機器叫裸機。

硬體系統

硬體系統一般包括:微處理器(CPU)、記憶體儲器、輸入/輸出接口、系統匯流排、外部設備。
其中,各部件之間的信號傳輸要通過系統匯流排來完成。系統匯流排
CPU
1、微處理器(CPU) CPU是電腦系統的心臟,電腦特別是微型電腦的快速發展過程,實質上就是CPU從低級向高級、從簡單向複雜發展的過程。
CPU(Central Processing Unit)又叫中央處理器,其主要功能是進行運算和邏輯運算,內部結構大概可以分為控制單元、算術邏輯單元和存儲單元等幾個部分。按照其處理信息的字長可以分為:八位微處理器、十六位微處理器、三十二位微處理器以及六十四位微處理器等等。
主流的CPU都是由AMD公司和Intel公司生產提供的。如AMD Athlon64 X2 5000+AM2、Intel Core 2 Duo E7200等。
2、記憶體儲器和輔助存儲器
記憶體儲器簡單的說就是我們通常說的記憶體。輔助存儲器簡單的說就是指硬碟和光碟機。
記憶體
3、輸入/輸出接口
I/O接口
IDE接口,一般用於連線硬碟和光碟機,這個接口逐漸被SATA接口所代替;SCSI接口主要是用作連線SCSI接口的硬碟;USB接口一種通用萬能插口,支持熱插拔;IEEE 1394接口比USB接口提供了更高的速率,同時也支持熱插拔。AGP接口,主要是用來連線顯示卡,但是隨著技術的發展,逐漸被PCI-E接口所取代。
4、系統匯流排
匯流排一般有兩類:一類是連線計算機內部各模組的匯流排,如連線CPU、存儲器和I/O接口的匯流排,常用的有ISA匯流排EISA匯流排PCI匯流排等;另一類為系統之間或系統與外部設備之間連線的匯流排,常用的有EIA-RS232C串列匯流排和IEEE-488並行匯流排等。
5、外部設備
外部設備 一般包括鍵盤、滑鼠、顯示器、印表機等。
6、運算器
運算器又稱算術邏輯單元ALU(Arithmetic Logic Unit)。運算器的主要任務是執行各種算術運算和邏輯運算。算術運算是指各種數值運算,比如:加、減、乘、除等。邏輯運算是進行邏輯判斷的非數值運算,比如:與、或、非、比較、移位等。計算機所完成的全部運算都是在運算器中進行的,根據指令規定的定址方式,運算器從存儲或暫存器中取得運算元,進行計算後,送回到指令所指定的暫存器中。運算器的核心部件是加法器和若干個暫存器,加法器用於運算,暫存器用於存儲參加運算的各種數據以及運算後的結果。

軟體系統

軟體系統包括:系統軟體和套用軟體
Windows 系列、 Linux系列等
系統軟體包括:作業系統、服務型程式、語言處理程式
2、套用軟體
套用軟體包括:定製套用軟體和通用套用軟體。

工作過程

可以簡單概括為輸入、處理、輸出和存儲4個過程。
1.輸入是指接受由輸入設備(如鍵盤)提供的信息;
2.處理是對信息進行加工處理的過程,並按一定方式進行轉換;
3.輸出是將處理結果在輸出設備上(如顯示器等)顯示或列印等操作;
4.存儲是將原始數據或處理結果進行保存以便再次使用。
這4個步驟組成一個循環過程。輸入、處理、輸出和存儲並不一定按照上述的順序操作。在程式的指揮下,計算機根據需要決定採取哪一個步驟。個人計算機的工作過程是通過輸入設備(鍵盤或滑鼠等)輸入用戶的操作命令或數據,計算機的處理單元(微處理器)接受到輸入命令後,進行處理並將結果在計算機的輸出設備(顯示器或印表機等)上輸出,也可以將結果保存在計算機的存儲器(硬碟或軟碟)上。因此,計算機對於某種輸入命令所要進行的對應操作,是由事先保存在計算機中的程式決定的。
計算機工作過程

PC組成

PC一般由主機和輸入輸出設備組成。主機一般由CPU、主機板、記憶體、硬碟、顯示卡、光碟機、電源、機箱、散熱器等組成;輸入設備一般包括鍵盤、滑鼠等,輸出設備一般包括顯示器、印表機等。這樣由主機和輸入輸出設備組成了一台裸機,只有再安裝好作業系統和套用軟體以後,才稱得上一台真正的計算機。

計算機原理人話版

首先人話版的意思,就是說人話,人人都能聽懂,但是考試得零分。
現在正式開始:
先解釋什麼是邏輯電路、邏輯門
一條線上串兩個開關,需要兩個開關都打開才能通電?這個可以理解吧。
這種電路叫做“與門”,待會我寫成“and”,可以理解吧?接通記成1,否則0。
那就是1 and 1 結果就是1,或者寫成 and(1,1)=1。顯然and(1,0)=0。
再有一個要記住,其實一個很小的電子元件就可以實現這個功能,不一定真要去搞一條線兩個開關。這個電子元件叫二極體還是八極管還是電容我們不用去關心,反正可以實現。非要了解你去查別的資料。
如果是並聯開關呢,就是一條線接個分支出去,接上開關匯成一條線。打開任何一個開關,都可以通,就是“或門” 待會我寫成 or。同樣是電路實現的。
現在有一條線本來是通的,燈會亮。你在中間分一條線出來,接上一個開關製造一個短路,如果不理解短路。就想像成水龍頭,本來2樓可以用水,你把一樓的水龍頭打開二樓自然就沒水了。英文是“notrynodie”很高端。 待會我寫成not, 這叫做“非門”。
講完了,以上大概就是計算機的80%原理了。自己喜歡推導就不用看下面了。
下面都是疊加,現在先把邏輯門疊加完。
先輸入兩個動作給一個and,and門裡出來的信號再輸出給not。
寫成 not (and(x,y)),x,y就是你手上的兩個開關。
這叫做叫做與非門,捋一捋就知道Not(and(1,1))=0,not(and(0,0))=1。
下面還有異或門Not(Or),就不講了。可以自己推導一下。
為什麼是2進制
基本門電路了解了。我們來看一下怎么實現進位記數。首先我們設定一下,通電就是1,不通就是0,待會好表達。現在地上放橫放四個燈泡,剛好二進制的4位數。第一位就是一個開關,第二位做一個and(xy),有兩個信號時,輸出1個信號。這就是二進制的第二位。第三位做一個and[and(xy),and(x,y)]4個信號都是1時,才輸出1,看得懂不?裡面成and構成外面and的信號源。這不就是2進制了嗎?也就是說,這也是通過邏輯電路可以實現的。
剩下的10%是存儲技術。
就像剛才,二進制進位也需要儲存啊,把上一位輸出輸入到下一位,或者加上另一個數,需要有個地方暫時存放我們的信號呀。有一種電子元件,叫啥?電容?半導體?還是什麼東西,他有一種特性,就是你給他加電,他不傳導。他會把電子留下,如果再加電,就會被擊穿,短暫的放出電子(大概或者就是這么個道理)。這個原理就可以作為機器里的暫存。外部存儲就是光碟,磁碟什麼的。最早會用到的打孔方法,這個最好理解。一條很長的紙帶上,有規律的打上一些孔。我們按一定的速度拖動這張紙條。因為有孔,所以有時透光,有時不透光。透光的時候對面有個感光元件收集信號。在約定個時長比如一秒采一次樣。就得到一段2進制的信息了。這個約定的採樣時長很重要。要不就亂套了,這個後面再說。
計算機怎么控制別的設備
最好理解的是顯示屏。你可以把這些看做是一排排的燈。每個燈泡連一個開關。按規定開關燈泡,就顯示出信息。想要顯示8的樣子。按順序開關就好。這個順序是用邏輯電路去設計好的。不用我們去逐個按電燈的開關。我們控制邏輯電路就好。只按幾個開關,就能顯示出8。當然這是最笨的辦法。沒有哪台電腦會這么去乾。
下面是計算。
如果這組8的信號沒有輸給顯示器,而是輸給了存儲器1。然後我們按加號,識別為選擇存儲器2。我們輸入1。當你按等號。就會執行一個把存儲器1和存儲器2的信號同時輸出一個準備好的邏輯電路。等邏輯電路再輸出的時候,就正好變成了9的信號,再把這個數位訊號,輸送給控制顯示器的邏輯電路翻譯成燈陣的開關方式。最後顯示器的燈陣就會顯示出9的樣。這就實現了加法。也實現了顯示。減法差不多,
一旦有了加法,就可以疊加其他的運算符號。比如乘法,減法。多少次方。差不多都是加法的累加。在加上之前說的邏輯運算。就發展出了更多的邏輯方式,比如“如果……就執行“這種控制方式。相當於用邏輯門設定一個執行密碼。
如果…就,就是 if,如果存儲器1裡面等於1,就執行關機的代碼。
還有for ,,就是一直執行,除非條件出現。
有了加減乘除,有了if,for。就可以把一些不是數字的轉成數字來計算。比如,螢幕如果關閉,就關機。這裡頭沒數字。但是我可以把螢幕關閉這種狀態解釋為1,我寫下邏輯,如果螢幕關閉狀態成立,X=1,如果X=1,執行關機的流程。 這裡的X是我們提前準備好的一個盒子。沒有信號輸入的時候保存為0.
明白了這個道理,我們就可以編一些簡單的程式了。比如讓電腦在顯示器上顯示一個圓。寫好了、很複雜。也許累了8天。但是以後再要畫圓,就不用再寫了。因為我可以保存這段代碼。下次用的時候,只需要改變直徑參數就可以了。但是這段代碼很長,抄起來也很費時間。所以我們取個代號,比如是cor,用邏輯方法,如果我們輸如cor這個代號時候,機器輸出畫圓的代碼串。我們再加個參數,比如cor=10,這樣電腦就會畫一個直徑10的圓。你自的代碼可以簡寫成cor,別人寫的就不一定,他可能會簡寫成roc什麼的。為了讓別被人也讀懂你的代碼,最好是統一下。
有個很牛的人叫做“別死磕”,寫了很多機器代碼,有的是控制顯示器畫直線,有的控制時間,有的命令只是幫助計算。他把這些命令全部保存起來,都複製給別人用,大家都用,用的人多了,就成了一種語言,叫做”別死磕”。
我們再用”別死磕”編譯成更高級的程式語言,比如C,“別死磕”一個命令可以代表上百個機器開關,可以敲3下鍵盤就畫一個圓。C語言一個命令可以代表上百條”別死磕”命令。可以敲2下鍵盤就畫一個奧迪。在C的基礎上,我們還搞了C++。機器在翻譯的時候,會先將C++翻譯成C語言,在把C語言翻譯成機器語言。這就是編程。
什麼是頻寬
剛才說了頻率,再回顧一下。頻率就是信號的間隔。比如遠方船上的旗手,舉左手是一個意思,舉右手是一個意思,這樣我們就不用考慮頻率。但是如果對面旗手是殘疾人。我們換個說法,你舉手是1,不舉手是0,這種情況就需要考慮頻率了,要不然我怎么知道你3分鐘不舉手代表幾個意思。如果1秒鐘採樣2次。就是2赫茲。這樣的速度對於船上殘疾旗手來說已經很快了。表達“你好”兩個字只需要半分鐘。但是計算機器還要稍快點,每秒三、五十億次。當然這個是cpu內部的頻率。記憶體到cpu之間、光碟到硬碟之間沒這么快。光碟最好理解。光碟上有很多洞。有洞的地方是1,沒洞就是0,光碟轉起來,光頭在上面掃過讀信息。轉速不能再提高,但讀的效率可以再提高,就是再增加一個光頭(就這個意思)。對了,讀取信息還要用線來傳輸,比如拷貝到硬碟記憶體什麼的。多了個光頭,就多條線唄。一條線不行兩條。線多了不好收拾就粘成一排,7、8條線粘成一排看上去就像一條帶子有沒有。線越多帶子就越寬對不對,所以頻寬就影響到速度有沒有。所以頻寬*頻率。就是總的效率
16進制
再來,你4條線同時給我傳信息,我同時就能收到4個信號。我想只要3個信號都不行。就好比你想買1根牙籤,老闆說一盒4根不開零。或者看成對面船首站了4位殘疾人在打信號,4個信號排列起來就是4位,每個信號兩個區別,有信號跟沒,就是0和1,這4位機就是4位機。4位你自己算算有多少種變化。不就剛好16種嗎,每採樣一次,能得到16個符號,英文字母26個,還要區分大寫還有標點,16肯定是不夠的。所以我們再採樣2次。就能得到16*16,256個變化,這樣就可以表示英文的一個字母了。採樣兩次才能成字母,叫字。採樣一次只能算一個節奏,所以叫位元組。一個中文四個位元組,也叫雙字。採樣一次有16個變化。就記做F,0~9後面是abcdef,剛好,F代表15。0~F ,這就是16進制。

相關詞條

熱門詞條

聯絡我們