当前位置: 代码迷 >> 汇编语言 >> CMP有关问题
  详细解决方案

CMP有关问题

热度:5680   发布时间:2013-02-26 00:00:00.0
CMP问题
mov   al,1
mov   bl,0ffh
cmp   al,bl

为什么cmp后CF会等于1呢?

------解决方案--------------------------------------------------------
al=1,bl=0ffh
cmp al,bl

0000 0001 1111 1121
-1111 1111 -> -1111 1111
---------- ----------
0000 0010 0000 0010

因为被减数向最高位产生了借位,所以CF=1
------解决方案--------------------------------------------------------
cmp执行了隐含的减操作并根据结果修改相应标志位
无符号减法中1h比0ffh来得要小,故减法时产生借位,因此CF被设置
  相关解决方案