[原创][教程] 位运算(AND,OR,XOR)
17 Feb 2013很多人还不清楚什么是位运算,所以就写了个教程。
了解位运算之前,先看看如何将2进制转换为10进制,或者从10进制换成2进制。
过程很难用文字解说出来,所以以例子图片来表达。
【2进制】
注意:2\^0 = 1
例子:
1)转换10011为十进制:
【10进制】
例子:
转换19转换为2进制:
现在开始看看位运算吧:
位运算全部都是基于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)
【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)
【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
Published by Gary Ng