位移动:<<、>>、>>>:
位运算:与(&)、或(|)、非(!)异或(^)
1、<<左移1位表示乘2:
例如5<<2
a、把5转换成二进制0000 0000 0000 0000 0000 0000 0000 0101
b、把左侧高位的两个0移除,在右侧补0得到结果0000 0000 0000 0000 0000 0000 0001 0100
c、转换为十进制20
同理:5>>2右移1位表示除2。
总结:左移丢弃最高位,0补最低位;右移符号位不变,左边补上符号位(正为0,负为1)
2、 &:当两边操作数的位同时为1时,结果为1,否则为0。如1100&1010=1000
| :当两边操作数的位有一边为1时,结果为1,否则为0。如1100|1010=1110
~:0变1,1变0
^:两边的位不同时,结果为1,否则为0.如1100^1010=0110