汇编语言的问题若AL = 80H,执行NEG AL后,CF和OF标志的状态分别为( C )A.0 和 0 B 0和1 C

汇编语言的问题
若AL = 80H,执行NEG AL后,CF和OF标志的状态分别为( C )
A.0 和 0 B 0和1 C1和0 D1和1
不就是把80H求补吗,正数求补是它本身呀,哪来的进位啊?
小虫等小虫 1年前 已收到1个回答 举报

lsx03 幼苗

共回答了17个问题采纳率:88.2% 举报

80H是负最大数:1000 0000,首位是1,所以是负数;既然是负数,说明后面的7位都是以补码的形式存储的,即其数值实际为111 1111,即7FH.所以-7FH的负号用符号位表示,就是80H了.
80H取补码,即1000 0000取补码,就是0111 1111,即+7FH,即-7FH的相反数.
注意:NEG命令只管将其后的二进制取补码,而不管这个二进制数是正数还是负数.而“补码”的含义就是“两个8(16)位数相加,恰好能够向第9(17)位进1,那么这两个二进制数就互为补码”.

1年前

1
可能相似的问题
Copyright © 2024 YULUCN.COM - 雨露学习互助 - 16 q. 0.030 s. - webmaster@yulucn.com