标志位详解

 

进位标志CF(Carry Flag)的定义:
当加减运算结果的最高有效位有进位(加法)或借位(减法)时,将设置进位标志为1,即CF=1;如果没有进位或借位,则设置进位标志为0,即CF=0。
这是说,处理器执行一个加法或者减法指令,对两个数据进行了相加或者相减,除了一个和值或者一个差值外;如果出现最高位的进位或者借位,在标志寄存器中的这个进位标志CF位就被处理器设置成为1。

假设处理器执行二进制8位数据加法指令,实现8位二进制数:00111010和01111100相加。
运算结果是:10110110。
运算过程中,最高位没有向上再进位,所以这个运算结果将使得:CF=0。

如果是10101010和01111100相加,结果是[1]00100110。
注意,8位运算指令只指明8位和值保存在何处,出现的第9位、即向高位的进位(用了中括号表达)进入了标志寄存器CF位,所以这个运算结果将使得:CF=1。

进位标志是针对无符号整数运算设计的,反映无符号数据加减运算结果是否超出范围、是否需要利用进(借)位反映正确结果。
把上面两个例子,分别用二进制、十六进制和十进制表达出来,可能你理解得更好。 

 

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值