标志寄存器

1 篇文章 0 订阅
1 篇文章 0 订阅

标志寄存器


  1. 标志寄存器,又称程序状态寄存器,顾名思义,就是能够判断、给出程序某时某刻的运行状态的寄存器
  2. 它是一个标志(开或者关,成立或者不成立)。在执行期间,这个标志要么是置位(值为1),要么是清除(值为0),并由这些值来控制CPU的运算,或者给出某些CPU运算的值
  3. 标志位和跳转时息息相关的
  4. 重要标志寄存器概览:
    • ZF :零标志位。代码执行后结果为 0 那么 ZF = 1;结果不为 0 则 ZF = 0
    • SF :符号标志位。相关指令执行后结果为负(-),那么 SF = 1;结果非负数,则 SF = 0
    • OF :溢出标志位。记录了有符号运算的结果是否发生了溢出,如果溢出 OF = 1;如果没有溢出 OF = 0
    • CF :进位标志位。在无符号运算时,记录了计算结果的最高有效位向更高位的进位值或从更高位借位,产生进位或借位时 CF = 1;否则 CF = 0
    • PF :奇偶标志位。相关指令执行后结果所有 bit 中 1 的个数为偶数,那么 PF = 1;1 的个数为奇数则 PF = 0
    • AF :辅助进位标志位。运算过程中看最后四位,不论长度为多少,最后四位向前有借位或者进位,AF = 1;否则 AF = 0
    • TF :调试标志位。当 TF= 1 时,处理器每次只执行一条指令,即单步执行
    • IF :中断允许标志位。它用来控制 8086 是否允许接收外部中断请求,若 IF = 1 ,8086 能响应外部中断;反之则屏蔽外部中断
    • DF :方向标志位。在串处理指令中,每次操作后,如果 DF = 0 ,si、di 递增;如果 DF = 1 ,si、di 递减。注意此处 DF 的值是由程序员进行设定的,cld 命令是将 DF 设置为 0 ,std 命令是将 DF 设置为1
  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值