內存單元,CPU對存儲器的讀寫,三大總線


.存儲單元

存儲器被分成若干個存儲單元,每個存儲單元從0開始順序編號。電子計算機的最小信息單位是bit。8個bit組成一個Byte(雖然現在一個字節可能不是8位,有寬字符出現了,但是一般我們的機器都是8位1字節的),也就是通常所說的字節。微型機存儲器的存儲單元可以存儲一個Byte,即8個二進制位。一個存儲器如果有128個存儲單元,那么它就可以存儲128個Byte。

微機存儲器的容量是以字節為最小單位來計算的。

對於擁有128個存儲單元的存儲器,我們可以說,它的容量是128個字節。常見計量容量換算:

1KB=1024B    1MB=1024KB    1GB=1024MB   1TB=1024GB

 

.CPU對存儲器的讀寫

CPU要想進行數據讀寫,必須和外部器件(標准說法是芯片)進行下面三類信息的交互:

1.存儲單元的地址(地址信息)

2.器件的選擇(即選擇要對那個一個器件進行操作 ),讀或寫的命令(控制信息)

3.讀或寫的數據(數據信息)

但是,CPU是通過上面講地址、數據和控制信息傳到存儲芯片中的呢?電子計算機能處理、傳輸的信息都是電信號,電信號當然要用導線傳送。在計算機中專門有鏈接CPU和其他芯片的導線,通常稱為總線。總線從屋里上來講,就是一根根導線的集合。根據傳輸信息的不同,總線從邏輯上分為三類,地址總線,數據總線和控制總線。

.地址總線

CPU是通過地址總線來指定存儲單元的。一根導線在穩定狀態只有兩種狀態,0或者1。一個CPU有N跟地址總線,則可以說這個CPU的地址總線的寬度為N。這樣的CPU最多可以尋找2的N次方個內存單元,即2的N次方Byte。 

.數據總線

數據總線的寬度決定了CPU和外界的數據傳送速度。8根數據總線一次可以傳送一個8位二進制數據,即一個字節。

8088CPU數據總線寬度為8, 8086CPU數據總線寬度為16。如果傳輸數據89D8H,8088需要分兩次傳輸,而8086只用傳輸一次。

.控制總線

CPU對外部器件的控制是通過數據總線來進行的。有多少根控制總線,就意味着CPU提供了對外部器件的多少種控制。控制總線的寬度決定了CPU對外部器件的控制能力。

.內存地址空間

什么是內存空間?如果一個CPU地址總線寬度為10,那么可以尋址1024個內存單元,即尋址能力為1KB。這1024個可尋址的內存單元就構成這個CPU的內存地址空間。

.主板

每一台PC機都有一個主板,主板上的器件通過總線相連。這些器件有CPU、存儲器、外圍芯片組、擴展插槽等。擴展插槽上一般插有RAM內存條和各類接口卡。

.接口卡

CPU對外部設備都不能直接控制,比如顯示器、音箱、打印機等。直接控制這些設備工作的是插在擴展插槽上的接口卡。擴展插槽通過總線個CPU相連,所以接口卡也通過總線和CPU相連。CPU可以直接控制接口卡,從而實現對外設的間接控制。

.各類存儲器芯片

RAM:隨機存儲器,可讀可寫,但必須帶電存儲,掉電后存儲內容丟失。

ROM:只讀存儲器,只能讀取數據不能寫入,掉電后內容不丟失。

.內存地址空間

CPU在操控存儲器的時候,把它們當做內存來對待。把它們總的看作一個由若干存儲單元組成的邏輯存儲器,這個邏輯存儲器就是我們說說的內存地址空間。在匯編這門課中,我們面對的就是內存地址空間。內存地址空間的大小受CPU地址總線的寬度限制。8086CPU地址總線寬度為20,可以定位2的10次方個內存單元,即內存空間大小為1MB,80386CPU地址總線寬度為32,則內存地址空間最大為4GB。我們基於一個計算機硬件系統編程的時候,必須知道這個系統中的內存地址空間分配情況。這樣才能保證讀寫操作是在預期存儲器中進行的。最終運行程序的是CPU,我們用匯編編程的時候,必須從CPU的角度思考問題。

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM