2进制,原码补码转换问题byte i = 67+89他的值是-100求详解.越详细越好,主要是原码补码那一段的讲解.求高
1个回答

yte的数据范围是-128至127

67+89=156显然溢出了,于是电脑就算不出正确的答案了

那么电脑会算出多少呢?

按计算机的算法,先把这两个加数换成补码,就成了

0100 0011 (67的补码)

+ 0101 1001 (89的补码)

——————————————

1001 1100 (得数的补码)

计算机会再将得数的补码转化成原码

因为此时的得数是一个负数(最高位为1)

所以得原码为1110 0100

再把它化为十进制,你看看是不是-100

这回能看懂了吧~~