关于二进制定点整数为什么说10000000是二进制数的最小值,如
为什么说000是二进制数的最小值,如果第一位表示负号 那么最小值应该是11111111 是-127才对。并且10000000是怎么得出等于-128的,怎么计算出来的?
为了方便运算,计算机中的数用补码表示。正数的补码就是原码,负数的补码是除符号位外,各位取反,再加1.另外补码比原码能表示的数范围更大 补码1 0000000 = 1 1111111 + 1 = -2^7 总之负数的补码和原码相加为0。 比如,-127, 补码1 0000001 + 原码1 1111111 = 10 0000000 = 00000000 溢出的那位就不算了