分类: Python/Ruby
2011-09-13 19:01:13
A:绝大部分机器采用补码方式表示有符号整数,
[-1]补码 = 11111111 ?
-1 取绝对值 1
1 原码 00000001
1 反码 11111110
反码+1 11111111
符号位置为1 11111111 <-- -1的补码
依次类推,[-2]补码 = 11111110 [-3]补码 = 11111101 ... [-128]补码 = 10000000,
故char型最小值为-128。
而自己通过计算得到的-127仅仅是将127取负作为最小值,其实在机器中它应该是倒数第二小值。