一、数据在计算机中的储存形式:补码
在计算机系统中,数值一律采用补码表示和存储。而我们都 知道,补码是由原码和反码推演而来:
正数反码、补码与原码一致;
负数的反码由原码符号位不变,其他位取反而来,而补码则是在反码的基础上加一。
所以数据存储在计算机内存的过程为:
看到这里,也许我们会有疑问,为什么要存在原码、反码、补码这三种码,这么推来推去也挺麻烦的,只使用原码不可以吗?
二、 补码的由来
计算机采用二进制,在计算机的底层概念里,机器数的第一位是符号位,但对于计算机基础电路设计来说判断第一位是符号位是非常困难的事情,为了简便运算,人们开始探索将符号位参与运算,并且保留只采用加法运算:减去一个数,等于加上这个数的负数,即1-1=1+(-1)。使用补码,可以将加减法统一处理。
三、原码、反码和补码的推演
反码解决原码运算减法时出现的错误,补码解决反码运算中让人不满意的地方。