10_标志寄存器

标志寄存器


标志寄存器和其他寄存器不同,其他的寄存器是用来存放数据的,整个寄存器具有一个含义
而标志寄存器是按位起作用的,也就是说,它的每一位都有专门的含义,记录特定的信息
1,3,5,12,13,14,15位没有使用,不具有任何意义
而0,2,4,6,7,8,9,10,11位都具有特殊的含义


ZF标志:

ZF标志:第六位,零标志位,对结果取反

    mov ax, 1
    sub ax, 1
    指令执行后,结果为0.则ZF = 1

    mov ax, 2
    sub ax, 1
    指令执行后,结果为1.则ZF = 0

PF标志:

PF标志:第二位,奇偶标志位,记录执行指令后,结果的所有二进制位中1的个数
为偶数:PF = 1
为奇数:PF = 0

SF标志:

sF标志:第七位,符号标志位,记录指令执行后
结果为负,SF = 1
结果为正,SF = 0

CF标志:

CF标志:第零位,进位标志位
无符号数运算时产生,是否产生进位。

OF标志:

溢出:进行有符号运算的时候,结果超过机器所能表达的范围

adc标志:

adc是带进位加法指令,利用了CF位上记录的进位值
格式:
    adc 操作对象1, 操作对象2
    结果:操作对象1 = 操作对象1 + 操作对象2 + CF

sbb标志:

sbb指令:带借位减法指令,利用了CF位上记录的借位值
格式:
    sbb 操作对象1, 操作对象2
    结果:操作对象1 = 操作对象1 - 操作对象2 - CF

cmp标志:

cmp指令:比较指令,相当于减法指令,只是不保存结果。执行后将对标志寄存器产生影响
格式:
    cmp 操作对象1, 操作对象2   
    结果:操作对象1 = 操作对象1

DF标志:

DF标志:第十位,方向标志位,在串处理指令中,控制每次操作后si,di的增减
DF = 0,每次操作后si,di递增
Df = 1,每次操作后si,di递减

格式:movsb / movsw
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值