原码、反码、补码和字节

1.
  8个二进制位是一个字节
  Byte是一个字节
  int类型是4个字节
  Long类型是8个字节
  当Long类型强制转换为int类型时是截取高位,保留低位
2.
  先看有几个字节
  128 计算机中的二进制表示
  原码:0000 0000 0000 0000 0000 0000 1000 0000
  截取低位一个字节后:1000 0000
  最高位为符号位,1表示负数

  计算机中用补码表示有符号数
  正数的补码就是自身
2.1
  原码反码补码

  原码:为二进制的数,  如:10 原码0000 1010

  反码:正数与原码相同, 如:10 反码0000 1010

  负数为原码0变1,1变0,(符号位不变)如:-10 原码1000 1010

  反码1111 0101

  补码:正数的补码与原码相同,如:10 补码:0000 1010

  负数的补码是反码加1     如:-10 反码:1111 0101

  补码:1111 0110

  计算机中数字以补码储存,因为原码和反码计算不准确,而补码是准确的。 
  现在已知补码是1000 0000,求原始数
  补码:1000 0000
  反码:1111 1111
  原码:1000 0000, 计算机中指定它为-128

posted @ 2020-08-11 17:36  Mrzxs  阅读(565)  评论(0编辑  收藏  举报