1. 程式人生 > >基本資料結構第一篇——位運算

基本資料結構第一篇——位運算

在所有現代cpu中都是以二進位制方式表示資料,所以使用位掩碼來計算的優點

1、更快的執行速度、

2、更簡潔的程式碼、

3、更少的佔用記憶體量

4、用陣列代替關聯陣列

首先是按位與

按位與(&)

對兩個數進行操作,然後返回一個新的數,這個數的每個位都需要兩個輸入數的同一位都為1時才為1,如上圖:

(A & B) 結果為 12, 二進位制為 0000 1100

然後是按位或

按位或(|)

比較兩個數,然後返回一個新的數,這個數的每一位設定1的條件是兩個輸入數的同一位都不為0(即任意一個為1,或都為1),如上圖:

(A | B) 結果為 61, 二進位制為 0011 1101

 

 

按位異或(^)

比較兩個數,然後返回一個數,這個數的每個位設為1的條件是兩個輸入數的同一位不同,如果相同就設為0,如下圖:

(A ^ B) 結果為 49, 二進位制為 0011 0001

 

 

在按位異或中我們可以對應位置 相加如1+0=1 1+1=2二進位制進一位則為0;

然後左移(<<)一位表示原先的數字*2 (多出來一位補零).

右移一位(>>)表示原先的數字除以2 

加油加油加油