原码、反码和补码(一)
在计算机内,有符号数有3种表示方法:原码、反码和补码,所有数据的运算都是采用补码进行的。正数的原码、反码、补码都相同,负数稍微复杂。
操作5(101)-5的二进制
原码:
就是二进制定点表示法,即最高位为符号位,0表示正,1表示负,其余位表示数值的大小。
反码:
负数的反码是对其原码逐位取反,但符号位除外。
补码:
负数的补码是在其反码的末位加1。
求反码的时候,最高位是符号位不能改变。
正数的符号位是0
负数的符号位是1
负数的原码:在正数的基础上,把原码部位一个字节(8位),最高位的符号位改为1即可。
负数的反码:除最高位的符号位不改变,其余位把0变为1,把1变为0
负数的补码:在反码的基础上,把反码的最后一位改为1即可为负数的补码。