Документация по Clarion

       

BXOR (Побитовое Исключающее ИЛИ - XOR)



BXOR(значение,маска)


значение Числовая константа, переменная или выражение,
задающее битовое значение, на которое накладывается МАСКА. ЗНАЧЕНИЕ, при необходимости, преобразуется к типу LONG перед операцией.
маска Числовая константа, переменная или выражение, задающее битовую маску. При необходимости, МАСКА преобразуется к типу LONG перед выполнением операции.

Функция BXOR сравнивает ЗНАЧЕНИЕ с МАСКОЙ, выполняя операцию ЛОГИЧЕСКОЕ ИСКЛЮЧАЮЩЕЕ ИЛИ над каждым битом. Возвращается длинное целое, в котором в единицу будут установлены только те биты, которые были единицами и в ЗНАЧЕНИИ и в МАСКЕ. Те биты, которые не совпали в МАСКЕ и ЗНАЧЕНИИ, а также те, которые были нулями и там и там, будут нулями.
BXOR обычно используется для переключения из 1 в 0 или наоборот одного или нескольких битов переменной.
Возвращаемый тип данных: LONG
Пример:
BXOR(0110b,0010b) вернет 0100b !0110b=6, 0100b=4, 0010b=2
RateType BYTE !Тип оклада
Female EQUATE(0001b) !Маска для женщин
Male EQUATE(0010b) !Маска для мужчин
Over25 EQUATE(0100b) !Маска для тех, кто старше 25 лет
Over65 EQUATE(1100b) !Маска для тех, кто старше 65 лет
CODE
RateType = BXOR(RateType,Over65) !Инвертировать признак "стар-
! ше 65 лет"



Содержание раздела