Поделиться через


ALL BITWISE и SOME BITWISE

Ключевые слова ALL BITWISE и SOME BITWISE используются для тестирования битов целочисленного типа. Если все биты набора в свойстве соответствуют маске, ALL BITWISE имеет значение true. Если по крайней мере один из наборов битов в свойстве соответствует маске, ЗНАЧЕНИЕ SOME BITWISE имеет значение true.

Операторы можно применять как к скалярным (однозначным) свойствам, так и к свойствам вектора (несколько значений). В следующем примере кода показано, как протестировать значения свойств с помощью ALL BITWISE и SOME BITWISE.

ALL array ALL BITWISE [values?]
ALL array SOME BITWISE [values?]
            

Операторы сравнения

Поддерживаемые операторы сравнения для тестов BITWISE перечислены в следующей таблице.

Оператор сравнения Description
= Равно
!= или <> Не равно

 

Логика тестов BITWISE представлена в следующей таблице.

Оператор тестирования и сравнения BITWISE Логика
= ALL BITWISE Свойство и маска = маска
= НЕКОТОРЫЕ БИТОВЫЕ Свойство и маска != 0
<> ALL BITWISE Свойство и маска != маска
<> НЕКОТОРЫЕ БИТОВЫЕ Свойство и маска = 0

 

В следующей таблице истины используются примеры двоичных и шестнадцатеричных значений для демонстрации логики тестов BITWISE.

Свойство в двоичном (шестнадцатеричном) Маска в двоичном (шестнадцатеричном) Property &Mask = binary (hex) = НЕКОТОРЫЕ БИТОВЫЕ = ALL BITWISE
0001 (0x1) 0001 (0x1) 0001 (0x1) Истина Истина
0001 (0x1) 0011 (0x3) 0001 (0x1) Истина False
0011 (0x3) 0001 (0x1) 0001 (0x1) Истина Истина
0010 (0x2) 0001 (0x1) 0000 (0x0) False False
111100000 (0xF0) 00000011 (0x03) 00000000 (0x00) False False
11110010 (0xF2) 11110010 (0xF2) 11110010 (0xF2) Истина Истина
11110010 (0xF2) 00000011 (0x03) 00000010 (0x02) Истина False

 

Пример

Ниже приведен пример предиката ALL BITWISE .

Select system.itemnamedisplay, system.FileAttributes from SystemIndex Where System.FileAttributes <> ALL BITWISE 0x4 AND Scope = 'file:c:\bitwise'
                

Концептуальный

Предикаты полнотекстового текста

Предикаты без полнотекстового текста