首先得明白10進制的數和2進制的數轉換關系
遵循“8421”原則
1=1
2=10
3=11
4=100
5=101
6=110
7=111
8=1000
9=1001
...
128=1000 0000
129=1000 0001
& 是所有的2進制位數“與”出的最終結果,“與”的規則是兩者都為1時才得1,否則就得0
舉個例子
7 & 6=?
7的2進制是:1 1 1
6的2進制是:1 1 0
結果: 1 1 0
得到結果為110,2進制轉換為10進制110=6
是以:7 & 6 = 6
7的2進制111在上面,6的2進制110在下面,第一位都是1,1&1=1,是以結果的第一位是1,第二位同樣都是1是以也是1,第三位上面是1,下面是0,是以1&0=0,是以最終結果111&110=110,110轉換成10進制等于6
| 是所有的2進制位數“或”出的最終結果,“或”的規則是兩者之一有一個1就得1,否則就得0
7 | 6 =?
結果: 1 1 1
得到結果為111,2進制轉換為10進制111=7
是以:7 | 6 = 7
這裡舉的兩個例子比較簡單,隻是拿比較短的2進制數進行比較,長的2進制也是以此類推
那就比較一個長的
129 & 128 = ?
129的2進制是:1 0 0 0 0 0 0 1
128的2進制是:1 0 0 0 0 0 0 0
結果: 1 0 0 0 0 0 0 0
得到結果為1000 0000,2進制轉換為10進制:1000 0000=128
是以:129 & 128 = 128