ビットAND演算でフラグ判定

コンピューターサイエンス理論 / 全 5

コンピューターサイエンス理論 - ビットAND演算でフラグ判定

設定を1つの整数に押し込める

真偽値をいくつも並べる代わりに、1つの整数の各桁へ設定を押し込められます。ある機能が有効かどうかを調べるのが AND の役目です。

この & がビット列に何をしているのかを、次の図解で8桁ぶん並べて見ます。

perm & WRITE が 0 かどうかだけを見ます。0 以外なら、その桁は立っています。

const READ = 1, WRITE = 2, EXEC = 4; const perm = 5; if (perm & WRITE) { /* 書き込める */ }

1 / 5

このスライドが付いているレッスンを開く