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

Побитовый оператор

Выполняет заданную побитовую операцию над входными сигналами.

Тип: Bitwise Operator

Путь в библиотеке:

/Basic/Logic and Bit Operations/Bitwise Operator

Описание

Блок Побитовый оператор выполняет заданную побитовую операцию для одного или нескольких операндов. В отличие от логических операций блока Логический оператор, побитовые операции обрабатывают операнды как вектор битов, а не как одно значение.

Значок блока меняется в зависимости от выбранной операции в параметре Оператор.

Количество входных портов блока задается параметром Number of input ports.

Ограничения операций с блоком

Блок Побитовый оператор не поддерживает операции сдвига. Для операций сдвига используйте блок Арифметический сдвиг.

Порты

Выход

# OUT_1 — выходной сигнал
скаляр | вектор | матрица

Details

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

Размер вывода блока зависит от количества входных параметров, размера вектора и выбранного вами оператора. Если битовая маска не задана, то вывод является скаляром, иначе вектором.

Типы данных

Int64

Поддержка комплексных чисел

Да

Вход

# IN_1 — входной сигнал
скаляр | вектор | матрица

Details

Входной сигнал в виде скаляра или вектора.

Количество входных портов блока задается параметром Number of input ports.

  • Оператор NOT принимает только один вход, который может быть скаляром или вектором. Если вход представляет вектор, выход представляет вектор того же размера, содержащий результаты заданной логической операции над элементами входного вектора.

  • Для одного входного вектора блок применяет операцию (кроме оператора NOT ) ко всем элементам вектора.

  • Для двух или более входов блок выполняет операцию между всеми входами. Если входные параметры являются векторами, блок выполняет операцию между соответствующими элементами векторов, таким образом формируя выходной вектор того же размера.

Типы данных

Int64

Поддержка комплексных чисел

Да

Параметры

Основные

# Оператор — побитовый логический оператор
AND | OR | NAND | NOR | XOR | NOT

Details

Побитовый логический оператор для блочных операндов. Доступны следующие побитовые операции:

Побитовая операция Описание

AND

true, если все соответствующие биты true

OR

true, если хотя бы один из соответствующих битов true

NAND

true, если хотя бы один из соответствующих битов false

NOR

true, если нет соответствующих битов true

XOR

true, если нечетное количество соответствующих битов true

NOT

true, если вход false (доступно только для одного входа)

Значения

AND | OR | NAND | NOR | XOR | NOT

Значение по умолчанию

AND

Имя для программного использования

logicop

Настраиваемый

Нет

Вычисляемый

Нет

# Использовать битовую маску — использовать битовую маску
Логический тип

Details

Установите флажок, чтобы использовать битовую маску.

Значение по умолчанию

true (включено)

Имя для программного использования

UseBitMask

Настраиваемый

Нет

Вычисляемый

Нет

# Number of input ports — количество входных сигналов
Целое число типа Int64

Details

Количество входов. Может быть более одного входного порта.

Зависимости

Чтобы использовать этот параметр, снимите флажок Использовать битовую маску.

Значение по умолчанию

1

Имя для программного использования

NumInputPorts

Настраиваемый

Нет

Вычисляемый

Да

# Битовая маска — битовая маска для связи с одним входом
Скаляр / массив вещественных чисел

Details

Задайте битовую маску для связи с одним входом. Этот параметр считывает значения как шестнадцатеричные значения.

Вы можете использовать битовую маску, чтобы установить, получить или очистить (обнулить) бит входного сигнала.

Действие Значение параметра Оператор Битовая маска

Установить бит

OR

1 для каждого соответствующего входного бита, который вы хотите установить в 1

Очистить бит

AND

0 для каждого соответствующего входного бита, который вы хотите установить в 0

Получить бит

AND

1 для каждого соответствующего входного бита, который вы хотите получить

Предположим, вы хотите установить четвертый бит 8-битного входного вектора. Битовая маска будет 00010000, которую вы можете указать как 2^4 для параметра Битовая маска. Чтобы очистить бит, используйте битовую маску 11101111, которую вы можете указать как 27+26+25+23+22+21+2^0 для параметра Битовая маска.

Зависимости

Чтобы использовать этот параметр, установите флажок Использовать битовую маску.

Значение по умолчанию

0b11011001

Имя для программного использования

BitMask

Настраиваемый

Да

Вычисляемый

Да

Дополнительные возможности

Генерация Си кода: Да