&= (compound bitwise and)

説明

複合ビット演算子「&=」は、変数と定数を使って、変数の特定のビットを強制的にLOW状態(0)にするためによく使われます。これをプログラミングガイドでは、ビットの「クリア」や「リセット」と呼ぶことがあります。

Bitwise AND & 演算子のおさらいです。

 

構文

x char、int、long
y char、int、long

コード例

MyByteがバイト変数の場合、0と「ビットごとのAND」されたビットは0にクリアされます。

注意点

ビット演算子でビットを扱っているので – 定数でバイナリフォーマッタを使うのが便利です。他の表現でも数値は同じ値になりますが、理解しづらいだけです。また、わかりやすくするために0b00000000を表示していますが、どんな数値フォーマットでもゼロはゼロです(うーん、何か哲学的なものを感じますね)。

結果として、変数のビット0と1をクリア(ゼロにする)し、変数の残りの部分を変更しないでおくには、定数0b11111100と複合ビット演算子(&=)を使用します。

同じ表現で、変数のビットを記号xに置き換えたものは以下の通りです。
タイトルとURLをコピーしました