-
原码,反码,补码的换算
正数:原码=反码=补码
负数:反码=原码取反(符号位不变);补码=反码+1
以int型为例(4字节=4*8位=32位,首位第一位是符号位,0表示正数,1表示负数)
-
按位取反运算(~)
正数取反的过程:
原码取反(包括符号位) ⇨ 结果为负数所以要再反码(符号位不变)⇨反码+1得补码=结果
负数取反的过程:负数取反=补码取反的结果
- 按位与运算(&)
1&1=1;1&0=0;0&0=0;0&1=0;
- 按位或运算(|)
1|1=1;1|0=1;0|0=0;0|1=1;