計算機組成原理(二)——計算機的基本組成

計算機的基本組成

馮·諾依曼計算機結構圖

  馮·諾依曼計算機以運算器爲中心。併發

 

馮·諾依曼計算機特色

  1.計算機由運算器、控制器、存儲器、輸入設備和輸出設備五大部件組成。ui

  2.指令和數據以同等地位存放在存儲器中,並可按地址尋訪。spa

  3.指令和數據均用二進制數表示。對象

  4.指令由操做碼和地址碼組成,操做碼用來表示操做的性質,地址碼用來表示操做數在存儲器中的地址。blog

  5.指令在存儲器中按順序存放。一般,指令是順序執行的,在特定條件下,可根據運算結果或根據特定的條件改變執行順序。ip

  6.機器以運算器爲中心,輸入輸出設備與存儲器之間的數據傳輸經過運算器完成。內存

存儲程序概念

  馮·諾依曼模型要求程序必須存儲在內存中,現代計算機的存儲單元用來存儲程序及其響應數據,這就意味着數據和程序應該具備相同的格式,這是由於它們都存儲在存儲器中。ci

  實際上它們都是以二進制形式存儲在內存中的。it

 

現代計算機結構圖

  現代計算機已在馮·諾依曼體系結構的基礎上轉化爲以存儲器爲中心io

  各部件的功能

    計算機的5大部件在控制器的指揮下,有條不紊的完成各項任務。

      1. 運算器用來完成算術運算和邏輯運算,並將運算的中間結果暫存在運算器中。

      2.存儲器用來存放數據和程序。

      3.控制器用來控制、指揮程序和數據的輸入、運行以及處理運算結果。

      4.輸入設備用來將人們熟悉的信息形式轉換爲機器能識別的信息形式。

      5.輸出設備可將機器運算結果轉換爲人們熟悉的信息形式。

  現代計算機已將運算器和控制器集成爲CPU

    因爲運算器和控制器在邏輯關係和電路結構上聯繫緊密,在大規模集成電路技術成熟後,將運算器和控制器集成在同一個芯片上,合稱爲中央處理器(CPU, Central Processing Unit)

    此外,CPU中還有一些寄存器組。即CPU由運算器控制器寄存器組構成。

現代計算機硬件簡化組成框圖

    因爲運算器和控制器被集成爲CPU,因此可認爲現代計算機由三大部分組成:CPUI/O設備(Input/Output Equipment)主存儲器(MM, Main Memory)。

    算術邏輯單元 (ALU, Arithmetic Logic Unit) 用來完成算術運算和邏輯運算。

    控制單元(CU, Control Unit)用來解釋存儲器中的指令,併發出各類操做指令來執行指令。

 

 

存儲器的基本組成 

    這裏討論的是主存,即內存。

    主存儲器包括存儲體、MARMDR、各類邏輯部件及控制電路。

  存儲器內部結構說明

    一個主存儲器(內存條)由多個存儲體組成,一個存儲體中有許多存儲單元,一個存儲單元中有若干個(八、1六、32個等)存儲元件

    每一個存儲元件能存儲一個二進制數 「0」 或 「1」;

  存儲字 存儲字長

    • 存儲字:一個存儲單元存儲的二進制代碼;
    • 存儲字長:一個存儲單元存儲的二進制代碼的位數;存儲字長能夠是8位、16位、32位等。

      一個存儲字能夠表示一個二進制數、十進制數、十六進制數、一串字符、ASCII碼、一條指令等。

      如:存儲字0011011001111101,表示16位的二進制數,表示十進制數13949,表示十六進制數367DH,表示兩個ASCII碼「6」和「}」,表示某條指令。

      指令與數據保存在存儲器中;

  按地址尋訪

    • 按地址尋訪:賦予每一個存儲單元一個地址號,按存儲單元的地址號實現對存儲字的存(寫入)、取(讀出)。

        如,將編寫好的程序的各條指令預先存入各存儲單元,當運行程序時,只要給出程序首條指令在主存中的首地址,而後採用程序計數器加1的方法,自動造成下一條指令所在存儲單元的地址,機器即可自動完成整個程序的運行。

        又如,當須要重複使用某個數據或某條指令時,只要指出其相應的存儲單元地址號便可,沒必要佔用更多的存儲單元重複存放同一數據或同一指令,從而提升存儲空間利用率。

  兩個寄存器

    MAR(Memory Address Register), 存儲器地址寄存器。

    • 做用:存放存儲單元的地址(編號)。
    • MAR 的位數與存儲單元的個數對應。如,若存儲單元有1024=210個,則MAR有10位。
    • MAR 反映存儲單元的個數。

    MDR(Memory Data Register),存儲器數據寄存器。

    • 做用:存放準備存入存儲單元的數據,或存放從存儲單元中取出準備送往 CPU 的數據。
    • MDR 的位數等於存儲字長。
    • MDR 反映存儲字長,及單個存儲單元的長度。

 運算器的基本組成

    運算器功能:執行各類算術運算和邏輯運算操做的部件。  

    運算器的基本操做包括加、減、乘、除四則運算;與、或、非、異或等邏輯運算;以及移位、比較和傳送等操做。

 

累加器

ACC

(Accumulator)

MQ

(Multiplier-Quotient Register)

乘商寄存器

X

操做數寄存器

加法

被加數

——

加數

減法

被減數

——

減數

乘法

乘積高位

乘數

被乘數

乘積低位

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

控制器的基本組成

    控制器的功能:解釋指令,保證指令的按序執行。

  PC:程序計數器 (Program Counter)。

  IR:指令寄存器 (Instruction Register)。

  完成一條指令過程當中控制器發揮的做用:

  1.取指令:命令存儲器讀出一條指令。

    動做部件:程序計數器PC。

    存放當前將要執行指令的地址,具備計數功能(PC)+1→PC,便可造成下一條指令地址。PC與主存的存儲器地址寄存器MAR之間有一條直接通路。

    PC→MAR→M→MDR→IR

    動做部件:指令寄存器IR。

    存放當前將要執行的指令;將IR中指令的操做碼送至CU,用來分析;將IR中指令的地址碼送至存儲器的MAR,做爲操做數的地址。

    OP(IR):IR中指令的操做碼。OP(IR)→CU

    AD(IR):IR中的指令地址碼。AD(IR)→MAR

  2.分析(解釋)指令:分析該指令要完成那些操做,明確操做數的地址。

    動做部件:控制單元CU。

    分析當前指令所須要完成的操做。

  3.執行指令:根據操做數所在的地址和指令的操做碼完成某種操做。

    動做部件:控制單元CU。

    發出各類微操做命令序列,控制全部被控對象完成動做。

相關文章
相關標籤/搜索