與(“與”運算)

與(“與”運算)

本詞條是多義詞,共2個義項
更多義項 ▼ 收起列表 ▲

“與”運算是計算機中一種基本邏輯運算方式,符號表示為&,與之相對應的詞是“或”,在日常口語交流和書寫中一般做關聯詞。漢語中表示和的意思。

基本介紹

  • 中文名:與
  • 外文名:and
  • pascal標識符:and
  • c++標識符:&
  • 近義詞:或
用法,定義,用途,置位歸零,巧用取模,

用法

參加運算的兩個數據,按二進制位進行“與”運算。
運算規則:0&0=0;0&1=0;1&0=0;1&1=1;
即:兩位同時為“1”,結果才為“1”,否則為0
例如:3&5即 0000 0011 & 0000 0101 = 0000 0001因此,3&5的值得1。
另,負數按補碼形式參加按位與運算。
“與運算”的特殊用途:
(1)清零。如果想將一個單元清零,即使其全部二進制位為0,只要與一個各位都為零的數值相與,結果為零。
(2)取一個數中指定位
方法:找一個數,對應X要取的位,該數的對應位為1,其餘位為零,此數與X進行“與運算”可以得到X中的指定位。
例:設X=10101110,
取X的低4位,用 X & 0000 1111 = 0000 1110即可得到;
還可用來取X的2、4、6位。

定義

二進制中,只有0、1兩種數字。有如下
第一個輸入
第二個輸入
輸出結果
1
1
1
1
0
0
0
1
0
0
0
0
可見,只有前後兩個運算數都是 1 的時候結果才是1。其效果與“或”相逆,各有不同用途。
同樣原理運用到真假中 真true=1 假 false=0
第一個輸入
第二個輸入
輸出結果
true
true
true
true
false
false
false
true
false
false
false
false

用途

置位歸零

使一個二進制數中的某一個/幾個數位歸零,其餘數位不影響(不變)。
[註解:....H 是表示十六進制數....B 是表示二進制數]
欲歸零的數位應置 0,其餘數位置 1
(15)H & (FF)H = (15)H
[解析 15 H=0001,0101 B ; FF H=1111,1111 B 按位相“與”,得到0001,0101 B 即為 15 H ]

巧用取模

因為位運算比%(取模)運算快,所以可對一下代碼進行最佳化
x=x%2;
最佳化
x=x&1;

相關詞條

熱門詞條

聯絡我們