首页
社区
课程
招聘
未解决 [求助]关于sub指令会置cf位的问题
发表于: 2019-4-24 11:56 1557

未解决 [求助]关于sub指令会置cf位的问题

2019-4-24 11:56
1557
012A7A32      66:B8 EE01    mov ax,0x1EE
012A7A36      66:2D 9144    sub ax,0x4491
计算结果ax==0xBD5D
步骤如下:
sub ax,0x4491=>ax=ax+(-0x4491)=111101110b+1011 1011 0110 1111b=1011110101011101b= 0xBD5D
结果我能算出来,但是cf位为啥会置1,这个位不是进位标志吗(没有看到进位),有朋友解惑一下的吗.


[培训]内核驱动高级班,冲击BAT一流互联网大厂工作,每周日13:00-18:00直播授课

最后于 2019-4-24 14:56 被yhjlikeyhj编辑 ,原因:
收藏
免费 0
支持
分享
最新回复 (7)
雪    币: 1140
活跃值: (102)
能力值: ( LV4,RANK:48 )
在线值:
发帖
回帖
粉丝
2
这触及到了我的知识盲区
2019-4-24 13:26
0
雪    币: 3561
活跃值: (541)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
3
xixi
2019-4-24 13:33
0
雪    币: 45
活跃值: (357)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
4
隐约找到的线索是跟借位有关系,在这个标志位在借位的时候也会也会置1,但是按照上面用补码的形式计算,并没有看到借位.
2019-4-24 14:55
0
雪    币: 45
活跃值: (357)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
5
算是解决了,0x1EE应该向高位借一位==0x101ee-0x4491,这样就对了,因为借位cf=1
2019-4-24 18:17
0
雪    币: 39
活跃值: (2946)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
6
减法就减法,为啥要死板地转成补码来计算?你要知道,整数包括非符号与符号数两类,只有符号数才有补码一说。
2019-4-24 20:31
0
雪    币: 45
活跃值: (357)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
7
NutCracker 减法就减法,为啥要死板地转成补码来计算?你要知道,整数包括非符号与符号数两类,只有符号数才有补码一说。
因为我是水货
2019-4-24 21:01
0
游客
登录 | 注册 方可回帖
返回
//