汇编语言,C语言问题,请问真值怎么求出来的。

如题所述

第一位符号位1表示负,所以是负数;
1100111 (二进制)= 2^6+2^5+2^2+2^1+2^0 = 103(十进制)
所以是 -103
温馨提示:答案为网友推荐,仅供参考
第1个回答  2022-08-05

已知 X 的补码是:1001 1001

首位 1,既代表负号,也代表数值-128。

所以:X =-128 + 16 + 8 + 1 =-103。

----

如果 X 的补码是:0001 1001

那么:X = 16 + 8 + 1 =+25。

----

求真值,就是这么简单。

哪有正负数原码反码取反加一符号位不变这些啰嗦事!

相似回答