赞
踩
位运算符有:左移( << )、右移( >> ) 、无符号右移( >>> ) 、与( & ) 、或( | )、非( ~ )、异或( ^ ),非( ~ )
除非运算为一元操作符外,其它的都是二元操作符。
将6左移2位:6<<2
0000 0110 然后左移2位后,低位补0:
0001 1000 换算成10进制为24
将6右移2位:6>>2
0000 0110 然后右移2位后,高位补0:
0000 0001 换算成10进制为1
将6无符号右移2位:6>>>2
0000 0110 然后右移2位后,高位补0:
0000 0001 换算成10进制为1
将-6无符号右移2位:-6>>>2
1111 1111 1111 1111 1111 1111 1111 1010 负数都以补码表示,不知道补码的可查看前篇博客
0011 1111 1111 1111 1111 1111 1111 1110 换算成10进制为1073741822
第一个操作数的每一位和第二个操作数的每一位对比,如果都是1,那么结果1,否则为0
将6和2与:6 & 2
0000 0110
0000 0010
-------------
0000 0010 换算成10进制为2
第一个操作数的每一位和第二个操作数的每一位对比,有一个是1,那么结果1,否则为0
将6和2或:6 | 2
0000 0110
0000 0010
-------------
0000 0110 换算成10进制为6
第一个操作数的每一位和第二个操作数的每一位对比,相同为0,否则为1
将6和2异或:6 ^ 2
0000 0110
0000 0010
-------------
0000 0100 换算成10进制为4
操作数的每一位1变为0,0变为1
将6非运算:~6
0000 0110
1111 1001 换算成10进制为-7
非运算可以简单理解成 ~x = -(x+1) 如:~ -6 = -( -6+1) = 5
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。