c语言中的位运算符中‘按位取反’是怎么运算的,什么是负数的反码,请各位帮我解释一下!!!
c语言中的位运算符中‘按位取反’是怎么运算的,什么是负数的反码,请各位帮我解释一下!!!
日期:2017-11-24 13:16:18 人气:2
0001
取反
1110
符号位为1,取反+1为
1010
转化成10进制为
-2
正数的原码,补码,反码都相同,都等于它本身
负数的补码是:符号位为1,其余各位求反,末位加1
反码是:符号位为1,其余各位求反,但末位不加1
也就是说,反码末位加上1就是补码
1100110011 原
1011001100 反 除符号位,按位取反
1011001101 补 除符号位,按位取反再加1
正数的原反补是一样的
在计算机中,数据是以补码的