微机原理----8088内部寄存器

微机原理----8088内部寄存器

内部寄存器的类型

14个16位寄存器,按功能分成3类

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

8个通用寄存器

  • 数据寄存器:AX BX CX DX
  • 地址指针寄存器:SP,BP
  • 变址寄存器:SI,DI
数据寄存器

8088含有4个16位数据寄存器,他们又可以分为8个8位寄存器

  • AX可以分为AH(高8位)和AL(低8位)
  • BX可以分为BH(高8位)和BL(低8位)
  • CX可以分为CH(高8位)和CL(低8位)
  • DX可以分为DH(高8位)和DL(低8位)

作用:暂存中间运算结果

AX:累加器
  • 所有IO指令都通过AX与接口传递信息,中间运算结果也多放在AX中
BX:基址寄存器
  • 在间接寻址中用于存放基地址
CX:计数寄存器
  • 用于在循环或者串操作指令中存放计数值
DX:数据寄存器
  • 在间接寻址的IO指令中存放IO端口的地址:在32位除法中,存放高16位数
地址指针寄存器
SP:堆栈指针寄存器
  • 其内容为栈顶的偏移地址
BP:基址指针寄存器
  • 常用于访问内存时存放内存单元的偏移地址
  • 和BX的区别:BX表示所寻找的数据在数据段BP寻找的数据在堆栈段
变址寄存器
  • SI:源变址寄存器
  • DI:目标变址寄存器
  • 变址寄存器的指令常用于存放数据在内存中的地址

控制寄存器

  • IP:指针寄存器,其内容为下一条要取的指令的偏移地址
  • FLAGS:标志寄存器,存放运算结果的特征:6个状态标志位:CF,SF,PF,ZF,OF;3个控制标志位:(IF,TF,DF)
状态标志位
CF(carry flag):进位标志位
  • 加减运算时,若最高位有进位(借位),则CF=1;
OF(overflow flag):溢出标志位
  • 当算数运算的结果超出有符号数的表示范围,则OF=1
ZF(zero flag):零标志位
  • 运算结果为0时,ZF=1;
SF(sign flag):符号标志位
  • 当运算结果的最高位为1时,SF=1;
PF(parity flag):奇偶标志位
  • 运算结果的低8位中“1”的个数为偶数时,PF=1;为奇数时,PF=0;
AF(auxiliary carry flag):辅助标志位
  • 在加减操作中,第3位向第4位有进位(借位)时,AF=1;(最右边为第零位)

如: 10110110 + 11110100 10110110+11110100 10110110+11110100的运算结果和各标志位的状态

结果: 10110110 + 11110100 = 10101010 10110110+11110100=10101010 10110110+11110100=10101010

标志位
CF1
OF0
ZF0
SF1
PF1
AF0
控制标志位
TF(trap flag):陷阱标志位,也叫跟踪标志位
  • TF=1:CUP处于单步执行命令的工作方式
IF(interrupt enable flag):中断允许标志位
  • IF=1:CPU可以响应可屏蔽中断的请求
DF(direction flag):方向标志位
  • 在数据串操作时确定操作方向

段寄存器

作用:用于存放相应逻辑段的段基地址

段的类型

  • 代码段(CS):存放指令代码

  • 数据段(Ds):存放操作的数据

  • 附加段(ES):存放操作的数据
    g):方向标志位

  • 在数据串操作时确定操作方向

段寄存器

作用:用于存放相应逻辑段的段基地址

段的类型

  • 代码段(CS):存放指令代码
  • 数据段(Ds):存放操作的数据
  • 附加段(ES):存放操作的数据
  • 堆栈段(SS):存放暂时不用但是需要保存的数据

更多请关注微信公众号


在这里插入图片描述

  • 0
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值