如何用二进制求补码?
在计算机系统中,数值,一律采用补码表示和存储。
在计算机中,原码和反码,都是不存在的。
所以,求补码,也不必使用它们。
补码,是由一系列二进制码组成的。
实用的有 8 位或 16 位。高档的还有 32、64 位。
补码中的每一位,都对应一位十进制数。
要注意:最高位所对应的数值,是负数。
那么,八位的补码,各个位的数值,就是:
-128、64、32、16、8、4、2、1。
--------------------
如果,有一个补码是:1011 1001。
它代表的数值,就是:-128 + 32 + 16 + 8 + 1 = -71。
倘若首位是 0,即为:0011 1001。
求数值,就更简单了:32 + 16 + 8 + 1 = +57。
--------------------
掌握了上述规律,由数值,再求补码,也就很简单了。
例如,求-125 的八位补码。
这是负数,首位一定是 1,代表了数值-128。
与-125 相比较,还应该有个 3。
用七位数值位表示 3,就是:000 0011。
综合在一起,-125 的补码,就是:1000 0011。
--------------------
求补码、求数值,都是很简单的事。
并不需要拐到“原码反码取反加一符号位不变”去。
老外脑子不好用,才会弄出哪些个骚操作!