原码补码反码
主要内容
- 数据内型的
机器数和机器数值的真值
在计算机中所有的数据都是以二进制保存的;
例如:
+3=00000011
-3=10000011
在机器数中,使用最高位来表示数字的正负,1为负,0为正
一个字长为8位
机器数的真值就是机器数所对应的真正的数值;
原码
首先确定一个数的正负,如果是正数,首位使用0表示,如果是负数首位使用1表示;
有效位:真值的的绝对值转换为二进制形式
然后把符号位和有效位拼接在一起
例如:
-6=00000110
+6=10000110
+35=00100011
-27=10011011
反码
正数的反码:和原码相同
负数的反码:符号位不变其余取反
例如:
+35的反码=00100011
-35的反码=11011100
补码
正数的补码:补码和原码一致(正数的原码反码补码都完全一致)
负数的补码:反码加一
例如:
+35=00100011
-35=11011101
为什么要补码
计算机设计时只设计了加法器,没有减法器,补码基本解决了减法问题但在相减后为零的情况出现了正负零的现象,为了完全解决减法器问题出现了补码.