1 .按位异或运算符 ^
相同为0,不同为1
例如:8^9=1000 ^1001
1000
1001
0001=1
2.按位与操作符 &
相同为相同,不同为0,意思就是1&1=1,0&0=0,1&0=0
例如:14&15=1110&1111
1110
1111
1110=14
3.按位或操作符 |
有1则为1,否则为0,意思就是1&0=1,0&0=0,1&1=1
例如:00000011|00000001
00000011
00000001
00000011=3
4.单目运算符 ~
就是对一个二进制进行取反 1=0,0=1。
例如:000111=111000
5.右移运算符>>
就是将一个数的各二进制位全部右移若干位。
左边缺失的2位用原二进制左边第一位值补上。
例如:a=0110111,a>>2
所以 a>>2=0001101.
6.左移运算符<<
就是将一个数的各二进制位全部左移若干位。
右边缺失的2位用原二进制右边第一位值补上。
例如:a=0110111,a<<2
所以 a<<2=1011111.
7.无符号右移运算符>>>
用来将一个数的各二进制位无符号右移若干位.
左边缺失的2位用0补上。(注意只能用0)
例如:a=0110111,a>>>2
所以:a>>>2=0001101
注:没有无符号左移运算符<<<这个说法。