原码、反码、补码
原码、反码、补码
引言:
在温故位操作中的移位时,涉及到了原码、反码、补码概念
这里来温故下原码、反码、补码的概念
还是要提一句:欠下的债,总是要还的、
正数
正数的原码、反码、补码都是同一个东西,都等于原码。
例如:
十进制数的23的原码是多少?
首先将23转成二进制,用除二取余的算法。
所以23的原码是
0001 0111
。最高位是符号位,0为正,1为负。
正数的反码和补码和原码一致。
正数在计算机里的存储方式是以补码方式存储的
负数
负数的原码和正数一样,都用除二取余的算法得到,但是需要注意的是,最高位的符号位是1。
反码是,除了最高位符号位,其余数位取反。
补码是,反码+1;
例如:写出十进制数-23的原码,反码,补码。
原码:1001 0111
反码:1110 1000
补码:1110 1001
在计算机中,负数是以补码的形式存放的。