计算机储存数据的方式和人的思维方式是不同的。和我们习惯使用十进制数字不一样,计算机是以二进制的形式对数据进行储存的(磁盘中高电势和低电势分别代表1和0).
接下来我们说一下原码,反码,补码这三个概念
原码:数据对应的二进制形式就是这个数据的原码。(使用短除法可以将一个十进制的数转化成二进制形式),原码首位数字为符号位,0为正,1为负。
-123 原码 【1111 1011】 反码【1000 0100】 补码【1000 0101】
可以这么认为,计算机储存或操作数据都是通过补码进行的。
接下来我们说一下原码,反码,补码这三个概念
原码:数据对应的二进制形式就是这个数据的原码。(使用短除法可以将一个十进制的数转化成二进制形式),原码首位数字为符号位,0为正,1为负。
我们可以通过自己的验证得知,原码的加减法得出结果和十进制原数的结果不一样,为此,引入入了反码和补码。若两个补码的和等于另一个补码,那么这三个补码对应额原码的十进制形式的和式仍然成立
反码:在源码的基础上,符号位不变,若为正,反码等于原码,若为负,除了符号位的其他位取反(1变成0,0变成1)
补码:若原码为正,补码等于原码,若原码为负,则在反码的基础上加一即可得到补码。
例: 78 原码【0100 1100】 反码【0100 1100】 补码【0100 1100】-123 原码 【1111 1011】 反码【1000 0100】 补码【1000 0101】
可以这么认为,计算机储存或操作数据都是通过补码进行的。