8086匯編 內存交互


8086匯編 計算機傳輸詳解

基礎了解

一、計算機存儲單元

  計算機數據可以被存儲在內存與磁盤中,對於計算機來說他們不同的數據有着不同的含義,他們可以被分為指令與數據,而這些存儲在計算機的數據都會有着固定的大小,根據計算機的存儲單元來決定。

數據量:B、KB、MB、GB、TB...

存儲單元:https://www.cnblogs.com/xiangsikai/p/9468131.html

二、計算機內存存儲

  計算機對於數據都是采取二進制的方式存儲,而對於CPU管理,數據主要以十六進制補碼的方式存儲在內存中,方便管理及使用。在匯編語言里不同的進制會采用字母表示(例1)。在存儲器被划分為若干個存儲單元,每個存儲單元從0開始順序編號,內存地址為16進制表示(例2)。

補碼:https://www.cnblogs.com/xiangsikai/p/12371424.html

1

  • 1000100111011000B (二進制)
  • 89D8H (十六進制)
  • 104730O(八進制)
  • 35288D(十進制)

例2

 一個存儲器有128個存儲單元,編號從0~127。

三、計算機中的總線

1、總線說明

在計算機中專門有連接CPU和其他芯片的導線,通常稱為總線。 

  • 物理上:一根根導線的集合。
  • 邏輯上划分為: 地址總線、數據總線、控制總線。

 2、地址總線

  • CPU是通過地址總線來指定存儲單元的。
  • 地址總線寬度,決定了可尋址的存儲單元大小。
  • N根地址總線(寬度為N),對應尋址空間2N。

 3、數據總線

  • CPU與內存或其它器件之間的數據傳送是通過數據總線來進行的。
  • 數據總線的寬度決定了CPU和外界的數據傳送速度。

例:向內存中寫入數據89D8H時的數據傳送

 4、控制總線

  • CPU通過控制總線對外部器件進行控制。
  • 控制總線是一些不同控制線的集合
  • 控制總線寬度決定了CPU對外部器件的控制能力。

 5、其他說明

說明:8086類型的CPU地址總線寬度為20,尋址能力相當於2的20次方,數據總線為16,一次性傳遞數據2B,讀取1k數據需要512次。

內存的讀寫與地址空間

一、CPU對存儲器的讀寫

1、說明

CPU要想進行數據的讀寫,必須和外部器件進行三類信息的交互:

  • 存儲單元的地址:(地址信息)
  • 器件的選擇,讀或寫命令:(控制信息)
  • 讀或寫的數據:(數據信息)

2、案例

機器碼: 101000000000001100000000

16進制:A00300

匯編指令:MOV AL,[3]

說明:

  1. CPU 地址線 獲取內存地址號3
  2. CPU 控制線發送讀信號
  3. CPU 數據線 將內存08數據讀取到 AL寄存器內

二、內存地址空間

1、內存空間

CPU地址總線寬度為N,尋址空間為2NB。

8086CPU的地址總線寬度為20,那么可以尋址1MB個內存單元,其內存地址空間為1MB。

RAM與ROM構成了整個內存空間。

說明:

  1. RAM 隨機存儲器,可讀可寫,斷電會丟失,動態存儲
  2. ROM 只讀存儲器,系統存儲的重要信息

 

 2、將各類存儲器看作一個邏輯存儲器統一編址

  • 所有的物理存儲器被看作一個由若干存儲單元組成的邏輯存儲器;
  • 每個物理存儲器在這個邏輯存儲器中占有一個地址段,即一段地址空間;
  • CPU在這段地址空間中讀寫數據,實際上就是在相對應的物理存儲器中讀寫數據。

 3、內存地址空間的分配方案以8086PC機為例

每段地址空間對應的 內存地址空間段。

 


免責聲明!

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



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