From:http://www.cnblogs.com/strugglever/
求负数补码真值的思想
补码由01表示的符号位和真值绝对值的补数构成。
真值等于模减去数值部分的值再加上符号。
在形式上正好是1M=1N-M(M表示01串,N表示0串,M与N的长度相等),相当于将1后面的位全部拿走,然后用0补上,再减去拿走的位。
以8位负数补码10000000为例
符号是最前面的1所表示的负号
数值=10000000(0的个数等于数值位的位数)-0000000(不包括符号位的部分)=10000000(十进制的128)
所以,补码10000000的真值就是-128.