位运算
移位运算
- 左移:操作符为<<,向左移动,右边的低位补 0,高位的就舍弃掉了,将二进制看作整数,左移 1 位就相当于乘以 2。
- 无符号右移:操作符为>>>,向右移动,右边的舍弃掉,左边补 0。
- 有符号右移:操作符为>>,向右移动,右边的舍弃掉,左边补什么取决于原来最高位是什么,原来是 1 就补 1,原来是 0 就补 0,将二进制看作整数,右移 1 位相当于除以 2。
逻辑运算
- 按位与
&
:两位都为 1 才为 1。 - 按位或
|
:只要有一位为 1,就为 1。 - 按位取反
~
:1 变为 0,0 变为 1。 - 按位异或
^
:相异为真,相同为假。