一个字节有8位,就是8个0和1

8个位的第一个位是符号位,0代表正,1代表负,所以Java中的数据类型都有正负之分,不存在无符号数。

也就是说0000 0001代表的是数字1,

1000 0001代表的就是-1

所以正数最大位0111 1111,那么转成十进制也就是数字127

负数最大为1111 1111,也就是数字-128

有8个数,一个数有两种可能,总共的可能就是2的8次方,256,一边一半,所以一个的byte的十进制范围是-128~127

 

130(十进制) = 10000010(二进制) ,有的人会问,这明明不是可以用8位二进制数来表示嘛,即可以用一个byte来表示

实际上130不是负数,所以必须要用两个byte来表示

 

相关文章:

  • 2022-01-08
  • 2021-12-19
猜你喜欢
  • 2022-12-23
  • 2021-11-21
  • 2022-01-13
  • 2021-10-24
相关资源
相似解决方案