位运算
位运算:位运算是二进制中的运算,所有其他进制的数再进行位运算时都要先转化成二进制数在进行运算
按位与&
参与运算的两个数相对应的位上,都是1时,该位取1,否则为0
A=0011 1100
B=0000 1101
//按位进行与(&)运算,对应位均为1取1,否则取0
A&B=0000 1100
按位或|
参与运算的两个数相对应的位上,只要有一个是1,就都为1,否则为0
A=0011 1100
B=0000 1101
A|B=0011 1101
按位异或(^)
参与运算的两个数相对应的位上,数相同则该位取0,不同则取1
A=0011 1100
B=0000 1101
A^B=0011 0001
取反(~)
相同位上,0取反为1,1取反为0
A=0011 1100
B=0000 1101
~B=1111 0010
左移(<<)、右移(>>)
左移相当于将数字×2
右移相当于将数字÷2