原码 反码 补码

  • 对计算机常见数据的分类

  • 机器数 与 真值

  • 原码

  • 反码

  • 补码

  • 扩展

对计算机常见数据的分类

数据分类

机器数

就是数值在计算机中的二进制的表现形式

机器数在计算机中有符号,使用最高位表示符号,使用 0 表示正,使用1 表示负

一个字节8个bit位表示

+5 = 0000 0101

-10 = 1000 1010

真值

机器数所表示的真正的数值

如:1000 1010 = -10

原码

原码就是符号位加上真值的绝对值

反码

正数:正数的反码 = 原码

负数:符号不变,其余各位各位直接取反

补码

计算机中数据以补码的形式参与计算

正数:原码 = 反码 = 补码

负数:首先求反码, 在反码的基础上+1,[加到最低位上]

为什么需要反码和补码

  • 反码

    • 在计算机的运算器中,只有加法器没有减法器,为了将减法 转化为加法 设计补码

    • 但是反码有缺陷,正负相加0的表示不唯一

  • 补码

    • 为了解决反码正负相加不唯一的情况,使用高位溢出解决

将补码转换为原码

正数:不需要转

负数:求补码的补码

将负数的补码当成原码,然后求该原码的补码

计算规则:符号位不变,其余各位直接取反,然后加1

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。