运算符 | 含义 | 说明 | 例子 |
& | 按位与 | 把参与运算的俩个数对应的二进制位相与,只有对应的二进制均为1时,结果的对应位才为1,否则为0 | 9&5中的9可以写成(00001001),5可以写成(00000101),那么9&5的运算结果为(00000001)输出结果为1 知道:与1的是本身,与0的都是0 |
| | 按位或 | 把参与运算的俩个数对应的二进制位相或,也就是只要对应的俩个二进制位有一个1时,其结果就是1 | 9|5相当于00001001|00000101,运算结果是00001101输出结果是13 |
^ | 按位异或 | 把参与运算符的俩个数对应的二进制位相异或,当对应的二进制位上的数据字不同时,结果对应的是1,否则是0. | 1^1=0,1^0=1,0^1=1,0^0=0 |
~ | 取反 | 把运算符的各个二进制位按位求反 | ~9相当于~(0000 1001),运算结果为1111 0110. |
<< | 左移 | 把"<<"左边的运算符数的各二进制位向左移若干位,"<<",右边的数是指定移动的位数,高位丢弃,低位补0 | a<<4指的是把a的各二进制位向左移动4位,如a=00000011,左移4位后位00110000(十进制为48) |
>> | 右移 | 把">>"左边的运算符数的各二进制位向右移若干位,">>",右边的数是指定移动的位数, | 设a=15,a>>2表示把00001111右移为00000011 |
位运算符
最新推荐文章于 2021-11-24 01:19:20 发布