微機原理 11-內部寄存器

內部寄存器的類型
14個16位寄存器,按功能可分爲三類

在這裏插入圖片描述

一 、通用寄存器

  • 數據寄存器(AX,BX,CX,DX)
  • 地址指針寄存器(SP,BP)
  • 變址寄存器(SI,DI)

1、數據寄存器

8088/8086含4個16位數據寄存器,它們又可分爲8個8位寄存器,即:

在這裏插入圖片描述
AX:
累加器。所有I/O指令都通過AX與接口傳送信息,中間運算結果也多放於AX中;
BX:
基址寄存器。在間接尋址中用於存放基地址;
CX:
計數寄存器。用於在循環或串操作指令中存放計數值;
DX:
數據寄存器。在間接尋址的I/O指令中存放I/O端口地址;在32位乘除法運算時,存放高16位數。

2、地址指針寄存器

SP:
堆棧指針寄存器,其內容爲棧頂的偏移地址;
BP:
基址指針寄存器,常用於在訪問內存時存放內存單元的偏移地址。
共同點:
1)默認指向堆棧區
2)多數情況用於存放地址

在這裏插入圖片描述

BX與BP在應用上的區別
作爲通用寄存器,二者均可用於存放數據;
作爲基址寄存器,用BX表示所尋找的數據在數據段;用BP則表示數據在堆棧段。

3、變址寄存器

SI:
源變址寄存器
DI:
目標變址寄存器
變址寄存器在指令中常用於存放數據在內存中的地址。
在這裏插入圖片描述

二、控制寄存器

在這裏插入圖片描述

狀態標誌位

CF(Carry Flag)
進位標誌位。加(減)法運算時,若最高位有進(借)位則CF=1
OF(Overflow Flag)
溢出標誌位。當算術運算的結果超出了有符號數的可表達範圍時,OF=1
ZF(Zero Flag)
零標誌位。當運算結果爲零時ZF=1
SF(Sign Flag)
符號標誌位。當運算結果的最高位爲1時,SF=1
PF(Parity Flag)
奇偶標誌位。運算結果的低8位中“1”的個數爲偶數時PF=1,僅針對低8位
AF(Auxiliary Carry Flag)
輔助進位標誌位。加(減)操作中,若Bit3向Bit4有進位(借位),AF=1,僅針對低8位

示例
在這裏插入圖片描述

控制標誌位

TF(Trap Flag)
陷井標誌位,也叫跟蹤標誌位。TF=1時,使CPU處於單步執行指令的工作方式。
IF(Interrupt Enable Flag)
中斷允許標誌位。IF=1使CPU可以響應可屏蔽中斷請求。
DF(Direction Flag)
方向標誌位。在數據串操作時確定操作的方向。

三、段寄存器

用於存放相應邏輯段的段基地址
8088有4個16位段寄存器

CS(代碼段)
指明代碼段的起始地址
SS(堆棧段)
指明堆棧段的起始地址
DS(數據段)
指明數據段的起始地址
ES(附加段)
指明附加段的起始地址

  • 存放相應段的段基址的高16位。每個段寄存器用來確定一個邏輯段的起始地址,每種邏輯段均有各自的用途。
  • 它們要和BX、BP、SI、DI、IP配合形成存儲單元的物理地址。
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章