位运算符(&,|,^,~,<<,>>)
常用位运算符有&,|,^
| 运算符 | 描述 |
|---|---|
| & | 与 |
| \ | 或 |
| 异或 |
真值表如下
| p | q | p&q | p \ q | p^q |
|---|---|---|---|---|
| 0 | 0 | 0 | 0 | 0 |
| 0 | 1 | 0 | 1 | 1 |
| 1 | 1 | 1 | 1 | 0 |
| 1 | 0 | 0 | 1 | 1 |
注:0表示false,1表示true
即是
0&0=0
0&1=0
1&1=1
1&0=0
0|0=0
0|1=1
1|1=1
1|0=1
0^0=0
0^1=1
1^1=0
1^0=1
现在有两个数A=10,B=6
它们的二进制格式是
A=1010,B=0110
A&B=0010
A|B=1110
A^B=1100
位运算符还有~,<<,>>
| 运算符 | 描述 |
|---|---|
| ~ | 按位取反运算符,即0变成1,1变成0 |
| << | 二进制左移运算符。左操作数的值向左移动右操作数指定的位数 |
| >> | 二进制右移运算符。左操作数的值向右移动右操作数指定的位数 |
~A = 0101
A<<2=1000
A>>2=0010