黑马程序员技术交流社区

标题: byte类型的范围为何是-128到127? [打印本页]

作者: kongdun1991    时间: 2016-5-31 19:07
标题: byte类型的范围为何是-128到127?
为何不是-127到128?
作者: loop    时间: 2016-5-31 19:12
一个字节位-2的7次幂到2的7次幂
作者: Aaron9527    时间: 2016-5-31 19:25
是因为包括了零的原因吧
作者: yuxing    时间: 2016-5-31 20:24
1 byte = 8 bit 即 00000000  8位。储存的方式是补码的形式
然而第一位是符号位,所以 相对而言,正数原反补码是一样的,最大为 0 1111111 = 127
负数呢,-128  原码为 1 0000000,则其反码为 1 1111111 补码为  1 (1)0000000,括号中指数值位进位。结果发现数值为超出,而符号位的1就既表示了负数的符号,又表示了这样一个128的数值,结合起来就是-128。
所以结合起来看就知道了, -128、-127~-1 对应的原码是 1 0000000 、11111111~ 10000001,
0~127 则对应的原码是 0 0000000 ~0 1111111.
这么详细的解答ok把?





欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2