原码、反码、补码
- 二进制的最高位是符号位, 0表示正数, 1表示负数;
- 正数的原码, 反码, 补码都一样;
- 负数的原码=对应正数的二进制原码,最高位设为1;
- 负数的反码=它的原码符号位不变, 其他位取反;
- 负数的补码=它的反码+1;
- 0的反码, 补码都是0;
- 在计算机运算的时候, 都是以补码的方式来运算的.
运算--位移( >> )
- 正数或者负数左移------:低位都是用0补。
- 正数或者负数右移------:符号位不变。
- 负数无符号右移,高位用0补。
运算--位与( & )
第一个操作数的的第n位于第二个操作数的第n位如果都是1,那么结果的第n为也为1,否则为0
运算--位或 ( | )
第一个操作数的的第n位于第二个操作数的第n位 只要有一个是1,那么结果的第n为也为1,否则为0
运算--位异或 ( ^ )
第一个操作数的的第n位于第二个操作数的第n位 相反,那么结果的第n为也为1,否则为0
运算--位非( ~ )
一元操作符: ~5
操作数的第n位为1,那么结果的第n位为0,反之。