匯編第二章知識總結
阿新 • • 發佈:2018-10-08
另一個 ron strong 聯系 知識 兩種 線性地址 內存 讀取
段地址 $\times$ 16構成短的起始物理地址。
今天剛學完第二章,以下是一些學習到的內容。
首先是CPU的概述
1.一個典型CPU由運算器、控制器和寄存器等器件組成。
2.內部總線實現CPU內部各個部件之間的聯系。
3.外部總線實現CPU和主板上其他器件的聯系。
通用寄存器
1.8086CPU所用的寄存器都是16位的,可以存放2個字節。AX,BX,CX,DX這四個寄存器都唱用來存放一般性數據,被稱為通用寄存器
2.為了保證與上一代8位CPU兼容,8086CPU的AX、BX、CX、DX可分為兩個可獨立使用的8位寄存器。
AX可分為AH和AL BX可分為BH和BL CX可分為CH和CL DX可分為DH和DX
出於對兼容性的考慮,8086CPU可以一次性處理以下兩種尺寸的數據。
字節:內存劃分的基本單位
字:兩個字節,分別稱為高位字節,和低位字節。
雙字:四個字節
四字:八個字節
匯編指令
有的內存單元構成的空間是一個一維的線性地址,每一個內存單元在這個空間中都有唯一的地址,我們將這個唯一的地址稱為物理地址。CPU通過地址總線送入存儲器的,必須是一個內存單元的物理地址。
16位結構描述了一個描述了一個CPU具有以下幾方面的結構特性:
運算器一次最多可以處理16位的字節
寄存器的最大寬度為16位。
寄存器和運算器之間的通路為16位。
8086CPU給出物理地址的方位
8086CPU有20位地址總線,可以傳送20位地址,達到1MB尋址能力。8086CPU又是16位地址,表現出的尋址能力只有64KB。采用一種在內部用2個16位地址合成的方法來形成一個20位地址。
當8086CPU要讀寫內存時:地址加法器采用 物理地址=段地址 $\times$ 16+偏移地址 的方法合成物理地址。
CPU中的相關部件提供兩個16位地址,一個稱為段地址,另一個稱為偏移地址。
地址和偏移地址通過內部總線送入一個稱為地址加法器的部件。
地址加法器將兩個16位地址合成為一個20位的物理地址。
地址加法器通過內部總線將20位物理地址送入輸入輸出控制電路。
輸入輸出控制電路將20位物理地址送上地址總線。20位物理地址北地址總線傳送到存儲器。
“段地址 + 偏移地址= 物理地址“的本質含義
段地址:偏移地址 也稱為 邏輯地址 。
段地址 $\times$ 16構成短的起始物理地址。
段寄存器
8086CPU有4個段寄存器中:CS,DS,SS,ES。
CS和IP
CS和IP是8086CPU中最關鍵的寄存器。
CS為代碼段寄存器,用於存放代碼段的段地址。
IP為指令指針寄存器,用於存放CPU將要讀取的指令在代碼段中的偏移地址。
CS:IP對應的物理地址存放是CPU將要讀取的指令。
匯編第二章知識總結