那些年我们一起遗忘的位运算!

来张位运算的图片:

1 与运算可以用来判断某个数是位在另外一个数中存在:

10 & 2 //结果为2,大于0表示操作数2在操作数1中存在 10=8+2

2 或去处可以用来将两个数相加在一起

82 //结果为10,10 | 2 结果还是10,你可以把它转换为二进制看一下,(1000 | 10 为1010,而1010 | 10 结果还是1010 ))呵呵,而10|4结果为14

3 左移运算,每移1位相当于乘2

4 << 2 //结果为16

4 右移去处,每移1位相当于除2

4 >> 2 //结果为1

5.异或运算法则

即“相同为0,不同为1”!

输入
运算符
输入
结果
1
^
0
1
1
^
1
0
0
^
0
0
0
^
1
1
 

网上收集:

”二进制“ 的1101转化成 ”十进制“:
 
1101(2)=1*2^0+0*2^1+1*2^2+1*2^3=1+0+4+8=13
    
    十进制     =     二进制  
(0)10  =  (0)2
(1)10 = (1)2
(2)10 = (10)2
(3)10 = (11)2
(4)10 = (100)2
(5)10 = (101)2
(6)10 = (110)2
(7)10 = (111)2
(8)10 = (1000)2
(9)10 = (1001)2
(10)10 = (1010)2
(11)10 = (1011)2
(12)10 = (1100)2
(13)10 = (1101)2
(14)10 = (1110)2
(15)10 = (1111)2
(16)10 = (10000)2


原文地址:https://www.cnblogs.com/Kummy/p/2935187.html