-128=110000000 前面的“1”是符号位,后面的10000000中的“1”是数值中的一部分,所以110000000应该是单符号位而不是双符号位.
-2^n是个特殊数(n为x数值位的长度):它补码的求法应按照公式进行运算:
如:
-128
“[-2^7]补”=(2^8)+(-2^7)=10000000
在纯整数的“原码”表示中,“[-2^n]原”是不能表示的;而在“补码”表示中,在模为2^(n+1)的条件下,纯整数的补码最小可以表示到-2^n 。这时在[-2^n]中,符号位的1既表示符号“-”,也表示数值2^n 。
你用公式的时候是用双符号位,后面的结果又用了单符号位,不晓得你什么意思。。
有-128吗?