理解为什么8位有符号数的范围为-128 ~ +127

8位无符号整型表示的数字范围0~255
8为有符号整型表示的数字范围-128 ~ +127
有的时候可能会不解,为什么不是 -127 ~ 127,-127 ~ 128等等

从无符号整型表示的范围中可以知道8位二进制可以表示256个数字,下面列出有符号的8位值部分表示

十进制     二进制原码
 127      01111111
 126      01111110
  .           .
  .           .
  0       00000000
 -1       10000001
-126      11111110
-127      11111111
-128      10000000

最后-128用10000000表示,-127(11111111)加1 二进制符号位不变数字位溢出舍去为10000000,10000000可以理解为-0位表示-128值

以上为简单理解

参考
https://blog.mimvp.com/articl...

你可能感兴趣的