内部寄存器有哪几种类型

电子说

1.3w人已加入

描述

含14个16位寄存器,按功能可分为3类:

8个通用寄存器;4个段寄存器;2个控制寄存器。

1 通用寄存器

①数据寄存器(AX,BX,CX,DX);

8088/8086含4个16位数据寄存器,又可分为8个8位寄存器,即:

控制寄存器

数据寄存器特有的习惯用法:

AX:累加器,所有I/O指令都通过AX与接口传送信息,中间运算结果也多放于AX中;

BX:基址寄存器,在间接寻址中用于存放基地址;

CX:计数寄存器,用于在循环或串操作指令中存放计数值;

DX:数据寄存器,在间接寻址的I/O指令中存放I/O端口地址;在32位乘除法运算时,存放高16位数。

②地址寄存器(SP,BP);

SP:堆栈指针寄存器,其内容为栈顶的偏移地址;

BP:基址指针寄存器,常用于在访问内存时存放内存单元的偏移地址。

备注:BX与BP在应用上的区别,作为通用寄存器,二者均可用于存放数据;作为基址寄存器用BX表示所寻找的数据在数据段;用BP则表示数据在堆栈段。

③变址寄存器(SI,DI)。

SI:原变址寄存器

DI:目标变址寄存器

变址寄存器在指令中常用于存放数据在内存中的地址。

2 控制寄存器

控制寄存器

①状态标志位

CF(carry flag):进位标志位,加减法运算时,最高位有进/借位则CF=1

PF(parity flag):奇偶标志位,运算结果的低8位中“1”的个数为偶数时,PF=1

AF(auxiliary carry flag):辅助进位标志位,加减操作中,若bit3向bit4有进借位,则AF=1

ZF(zero flag):零标志位,当运算结果为零时,ZF=1

SF(sign flag):符号标志位,当运算结果最高位为1时,SF=1

OF(overflow flag):溢出标志位,当算术运算结果超出了有符号数的可表达范围时,OF=1.

状态标志位 例题:

控制寄存器

②控制标志位

TF(trap flag):陷阱标志位,也叫跟踪标志位,TF=1时,使CPU处于单步执行指令的工作方式

IF(interrupt flag):中断允许标志位,IF=1使CPU可以响应可屏蔽中断请求。

DF(direction flag):方向标志位,在数据串操作时确定操作的方向。

3 段寄存器

CS:代码段寄存器,存放代码段的段基地址。

DS:数据段寄存器,存放数据段的段基地址。

ES:附加段寄存器,存放附加段的段基地址。

SS:堆栈段寄存器,存放堆栈段的段基地址。

段寄存器的值表明响应逻辑段在内存中的位置。

后接--存储器寻址
责任编辑人:CC

打开APP阅读更多精彩内容
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分