ALL BITWISE および SOME BITWISE キーワードは、整数型のビットをテストするために使用されます。 プロパティ内のすべてのセット ビットがマスクと一致する場合、 ALL BITWISE は true です。 プロパティ内の少なくとも 1 つのセット ビットがマスクと一致する場合、 SOME BITWISE は true です。
演算子は、スカラー (単一値) プロパティとベクター (複数値) プロパティの両方に適用できます。
次のコード例は、ALL BITWISE および
ALL array ALL BITWISE [values?]
ALL array SOME BITWISE [values?]
比較演算子
BITWISE テストでサポートされている比較演算子を次の表に示します。
| 比較演算子 | 説明 |
|---|---|
| = | 等しい |
| != または <> | 等しくない |
BITWISE テストのロジックを次の表に示します。
| BITWISE テストおよび比較演算子 | ロジック |
|---|---|
| = ALL BITWISE | プロパティ & マスク = マスク |
| = ビット単位 | プロパティ & マスク != 0 |
| <> ALL BITWISE | プロパティ & マスク != Mask |
| <> ビットごとの一部 | プロパティ & マスク = 0 |
次の真理値表では、バイナリ値と 16 進値の例を使用して、BITWISE テストのロジックを示します。
| バイナリのプロパティ (16 進数) | バイナリ (16 進数) でマスクする | プロパティ & マスク = バイナリ (16 進数) | = ビット単位 | = ALL BITWISE |
|---|---|---|---|---|
| 0001 (0x1) | 0001 (0x1) | 0001 (0x1) | True | True |
| 0001 (0x1) | 0011 (0x3) | 0001 (0x1) | True | False |
| 0011 (0x3) | 0001 (0x1) | 0001 (0x1) | True | True |
| 0010 (0x2) | 0001 (0x1) | 0000 (0x0) | False | False |
| 11110000 (0xF0) | 00000011 (0x03) | 000000000 (0x00) | False | False |
| 11110010 (0xF2) | 11110010 (0xF2) | 11110010 (0xF2) | True | True |
| 11110010 (0xF2) | 00000011 (0x03) | 00000010 (0x02) | True | False |
例
次に、 ALL BITWISE 述語の例を示します。
Select system.itemnamedisplay, system.FileAttributes from SystemIndex Where System.FileAttributes <> ALL BITWISE 0x4 AND Scope = 'file:c:\bitwise'
関連トピック