1. 程式人生 > >Python按位與、按位或、按位異或、按位取反(筆記)

Python按位與、按位或、按位異或、按位取反(筆記)

1. 按位與

       按位與是針對二進位制數的操作,指將兩個二進位制數的每一位都進行比較,如果兩個相
應的二進位都為 1 則此位為 1,否則為 0。在本例中, 5 的二進位制表達為 101 , 3 的
二進位制表達為 11 (為補全位數進行按位操作寫作 011 ),則按位與操作後的結果為
001 ,對應的十進位制數為 1 。 

2. 按位或

       按位或是針對二進位制數的操作,指將兩個二進位制數的每一位都進行比較,如果兩個相
應的二進位有一個為 1 則此位為 1,否則為 0。在本例中, 101 與 011 進行按位或操
作後的結果為 111 ,對應十進位制數為 7 。 

3. 按位異或

       按位異或是針對二進位制數的操作,指將兩個二進位制數的每一位都進行比較,如果兩個
相應的二進位不同則此位為 1,相同為 0。在本例中, 101 與 011 進行按位異或操作
的結果為 110 ,對應十進位制數為 6 。 

4. 按位取反

        按位取反也稱作“按位取非”或“求非”或“取反”,沈潔元譯本譯作“按位翻轉”,是針對二進
制數的操作,指將兩個二進位制數的每一二進位都進行取反操作, 0 換成 1 , 1 換成
0 。只需按照給出的公式記憶 ~6 = -(x+1)=-7

(注:從《A Byte of Python》摘錄)