8位有符号整数的范围[-128, 127]最简单解释

计算机存储机器数是使用补码的形式,8位二进制数共可表示256个数,其中:

0000 0001 ~ 0111 1111一共127个正数

1000 0001 ~ 1111 1111一共127个负数

剩下两个数是0000 0000 和1000 0000,本来分别表示+0和-0,但为了只用一个数来表示0,1000 0000就被规定为表示-128,

原因如下:

(-1) + (-127) = [1000 0001]原 + [1111 1111]原 = [1111 1111]补 + [1000 0001]补 = [1000 0000]补 = (-128)

因此就规定使用1000 000表示-128。

其他16位,32位整数的表示范围原理一致。

发表评论

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen: