机器数、真值、原码、反码、补码总结

一、概念清单

  1. 机器数

  2. 真值

  3. 原码

  4. 反码

  5. 补码

二、概念详解

1. 机器数

  1. 机器数是一个数在计算机中的二进制表示形式。

  2. 机器数带符号,最高位存放,正数为0,负数为1。

十进制数+3,计算机字长为8位的话,转换二进制为00000011
十进制数-3,计算机字长为8位的话,转换二进制为10000011
上述这两个二进制就是机器数。

2. 真值

  1. 由于符号位的存在,机器数不等于真值。

  2. 带符号的机器数,真正的数值。

    -3是真值,它的机器数是10000011(其形式值为131(十进制))

3. 原码

  1. 原码是符号位加上真值的绝对值,即第一位为符号位,其余位表示值。

        十进制数+1原码为 00000001十进制数-1原码为 10000001
    
  2. 因为第一位是符号位,所以8位二进制的取值范围为:

        [11111111,01111111]    

        [-127,127]    
  3. 原码是人脑最容易理解和计算的编码方式。

  4. 无符号数用原码。

4. 反码

  1. 正数的反码是其本身。

  2. 负数的反码是其原码基础上,符号位不变,其余各位取反

        [+1] = [00000001]【原】 = [00000001]【反】[-1] = [10000001]【原】 = [11111110]【反】
  3. 反码不容易被人脑直接看出真值,通常需要转换成原码

5. 补码

  1. 正数的补码是其本身。

  2. 负数的补码是其原码的基础上,符号位不变,其余各位取反,最后+1。

        [+1] = [00000001]【原】 = [00000001]【反】 = [00000001]【补】[-1] = [10000001]【原】 = [11111110]【反】 = [11111111]【补】
  3. 补码不容易被人脑直接看出真值,通常需要转换成原码

  4. 计算机中,有符号数采用补码


本文来自互联网用户投稿,文章观点仅代表作者本人,不代表本站立场,不承担相关法律责任。如若转载,请注明出处。 如若内容造成侵权/违法违规/事实不符,请点击【内容举报】进行投诉反馈!

相关文章

立即
投稿

微信公众账号

微信扫一扫加关注

返回
顶部