二进制的原码、反码、补码
一、原码
是一种计算机中对数字的二进制定点表示方法,原码不分正负他们的第一位都是符合位0代表正1代表负。
比如:10的二进制为:00000000 00000000 00000000 00001010。
-10的二进制为:10000000 00000000 00000000 00001010。
二、反码
1、 对于正数来说反码就是他自己本身所以不改变。
2、对于负数来说反码就与它本身的原码有些不同了,他的基本规则为除了他的符号位外,将负数原码的0变成1,1变成0,得到的就是该负数的反码。
比如10的反码为:00000000 00000000 00000000 00001010。
-10的反码为:11111111 11111111 11111111 11110101.
三、补码
1、对于正数来说他的原码、补码、反码都相同所以正数不会变。
2、对于负数来说他的补码原则为:在其最后一位加1,然后得到的就是其补码。
-12的原码:1000 1100最高位不变,其余位取反:1111 0011,加一得到补码:1111 0100。
总结:正数的反码、原码、补码都相同。负数在计算机都是以补码存在,原则在保持符号为不变的情况下,将负数的原码中的0变成1、1变成0,得到的是该负数的反码,然后在将其加1的结果就是负数的补码