[原创][教程] 位运算(AND,OR,XOR)

很多人还不清楚什么是位运算,所以就写了个教程。

了解位运算之前,先看看如何将2进制转换为10进制,或者从10进制换成2进制。
过程很难用文字解说出来,所以以例子图片来表达。

【2进制】
注意:2\^0 = 1
例子:
1)转换10011为十进制:

image

【10进制】
例子:
转换19转换为2进制:

image

现在开始看看位运算吧:

位运算全部都是基于2进制操作的,所以所有都要转换到2进制才能进行位运算。
注意:位运算时,不足则补零
位运算中,0是False,1是True

【AND】
两边都是True,则为True (两边都是1,则为1)

1(2) AND 1(2) = 1
1(2) AND 0(2) = 0
0(2) AND 0(2) = 0

例子:
1)10 AND 19  = ?
10 = 1010(2)
19 = 10011(2)

image
10 AND 19 = 00010(2) = 2

【OR】
其中一边为True,则为True(其中一边1,则为1)

1(2) OR 1(2) = 1
1(2) OR 0(2) = 1
0(2) OR 0(2) = 0

例子:
1)10 OR 19 = ?
10 = 1010(2)
19 = 10011(2)

image
10 OR 19 = 11011(2) = 27

【XOR】
其中一边为False,则为True(其中一边0,则为1)
*谢谢网友luther,更正了错误

1(2) XOR 1(2) = 0
1(2) XOR 0(2) = 1
0(2) XOR 0(2) = 0

例子:
1)10 XOR 19 = ?

10 = 1010(2)
19 = 10011(2)

10 XOR 19 = 11001(2) = 25

« [原创] 笔者装机必备的软件 [其他] 部落格小改版 »
comments powered by Disqus