汇编中加减法对标志位的影响

来源:百度知道 编辑:UC知道 时间:2024/06/26 02:41:43
5394H+(-777fH)与5394H-777fH对标志位(如CF,AF)的影响
为什么不同。
mov ax,5394h mov ax,5394h
mov bx,777fh mov bx,777fh
sub ax,bx neg bx
add ax,bx
上面格式不对
mov ax,5394h
mov bx,777fh
sub ax,bx

mov ax,5394h
mov bx,777fh
neg bx
add ax,bx

CF是对首位的影响,具体看是加法,还是加法
AF是次进位的影响
CF为1
AF为1

CF是进位标志位,作SUB减法运算时,最高位有无借位,将影响CF.
而AF是辅助进位标志位,当作SUB减法运算时(sub ax,bx),如AX的低八位AL作运算时,向高位借位,则AF=1;否则AF=0.

在加减法运算时,CF表示最高位向上形成的进位或借位,AF表示半进位或借位(在字运算时,半表示低字节的最高位).
带符号数在计算机中是用补码表示的.(-777fH)的补码为8881H
5394H+(-777fH)在计算时相当于5394H+8881H,所以CF=1,AF=1.
5394H-777fH时CF=0,AF=0.