Bit Shift
Логический или арифметический сдвиг входного сигнала.
Описание
Блок Bit Shift выполняет логический или арифметический сдвиг входного сигнала.
Поведение этого блока при моделировании и генерации кода отличается от блока Shift Arithmetic.
Блок Shift Arithmetic сдвигает биты или двоичную точку входного числа. Этот блок имеет дополнительные опции для генерации кода по сравнению с блоком Bit Shift. Когда необходимо выполнить операцию переменного сдвига, используйте блок Shift Arithmetic вместо блока Bit Shift. Если на вход подано число со знаком, то блок выполняет расширение знакового разряда.
Порты
Вход
Port_1 — входной сигнал
скаляр
| вектор
| матрица
Входной сигнал, для которого выполняется логический или арифметический сдвиг.
-
Минимальная битовая ширина: 2.
-
Максимальная битовая ширина: 128.
Типы данных: Float16
, Float32
, Float64
, Int8
, Int16
, Int32
, Int64
, Int128
, UInt128
UInt8
, UInt16
, UInt32
, UInt64
, Bool
, Fixed
Поддержка комплексных чисел: Да
Выход
Port_1 — выходной сигнал
скаляр
| вектор
| матрица
Выходной сигнал, для которого произведен логический или арифметический сдвиг. Выходной сигнал имеет тот же тип данных и размер, что и входной сигнал.
-
Минимальная битовая ширина: 2.
-
Максимальная битовая ширина: 128.
Типы данных: Float16
, Float32
, Float64
, Int8
, Int16
, Int32
, Int64
, Int128
, UInt128
UInt8
, UInt16
, UInt32
, UInt64
, Bool
, Fixed
Поддержка комплексных чисел: Да
Параметры
Shift Mode — тип и направление сдвига
Shift Left Logical (по умолчанию)
| Shift Right Logical
| Shift Right Arithmetic
Укажите тип и направление сдвига.
Параметр блока |
|
Значения |
|
По умолчанию |
|
Shift Length (must be greater than or equal to zero) — количество битов для сдвига
0 (по умолчанию)
| неотрицательный скаляр
Задайте количество битов для сдвига большее или равное нулю.
Параметр блока |
|
Значения |
|
По умолчанию |
|