背景:计算机内部用补码表示二进制数。 标号1代表负数,而0代表正数。
正数:无区别,正数原代码=反代码=补码
如果重点讨论负数并知道负数-8,则为
原码是1000 1000。 (1是符号位,1是负数,0是正数) )。
3358www.Sina.com/是http://www.Sina.com/1110111、http://www.Sina.com/,以及其他位置是位3358 www.Sina.com /
反码是1111 1000,(代码1 )
也就是说,在计算机中,1111 1000表示-8
如果知道补数为1111 1000,如何求出其原代码?
(1)方法1 )负数原码---补码的符号位保持不变
注意:符号位不会改变。
(a )先- 1,得到1111 0111
(b )相反) 3358www.Sina.com/,其他位置取反),得到补码000 1000
)2)方法2 :
注意:符号位不会改变。
(a )在这二进制数中) 1111 1000 ),将除符号比特以外的剩馀位置逐比特颠倒时,为1000 0111
(b ) 1,1000 )获得1000
总结:逆过程。和符号位保持不变的效果相同。
这与按位取反相同。