对原码,反码,补码的理解
简要概述:主要介绍原码,反码,补码的基础定义不涉及深度解析。
1.原码:
原码是一个数值的基础二进制表示方法,此处我们以一个字节来进行描述,原码包括符号位和数值位两部分。
第一位为符号位0表示正1表示负,符号位后面的都是数值位。如00000110表示的就是+6它的第一位为0所以是正数,
后面根据二进制转换为十进制的运算法则可以算出6所以最后得出+6;如果是10000110那根据上面的规则可以得出该数为
-6。
2.反码:
正数的反码和原码相等,负数的反码是除了符号位其他位取反所得到的(取反就是1变成0,0变成1)。
如上面提到的-6的反码就是11111001。此项在掌握原码的基础上不难理解。
3.补码:
正数的补码与原码相等,负数的补码是在反码的基础上加1,此处可能较难理解我们可以用计算的方法详细解释,
我们继续以-6做例子,首先我们将1转换为8位二进制的形式也就是00000001,然后我们将它与11111001做加法得到11111002,
我们知道二进制是逢二进一原则与十进制的逢十进一原则相似,所以得到11111010也就是-6的补码。
4.总结:
关于原码,反码,补码的拓展内容还有很多但本文只是对其概念进行了讲解,总的来说概念这部分内容还是很容易掌握的
即正数的原码等于反码等于补码;负数的反码等于原码的符号位不变其他位取反,负数的补码等于反码加一.