# ShiftArithmetic
对信号进行算数移位
库: Sysblock 模块库 / LogicAndBitOperation
# 描述
ShiftArithmetic 模块可以对信号做算术移位。
例如,将 sfix ( 8 ) 数据类型的输入信号算术向右和向左移动两位,将得到以下小数值。
| 移位运算 | 二进制值 | 十进制值 |
|---|---|---|
| 无移位(原始数字) | 11001.011 | -6.625 |
| 算术向左移动两位 | 1100101.1 | -26.5 |
| 算术向右移动两位 | 110.01011 | -1.65625 |
# 示例
参考模型示例
。
# 端口
# 输入
u — 要对其执行运算的数标量 | 向量 | 数组
要对其执行运算的数,指定为标量、向量或数组。
数据类型: double | float | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64 | fixed point
s — 要移位的位数标量
要移位的位数,指定为标量。
数据类型: double | float | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64 | fixed point
# 参数
# 数据和算法
二进制位移位数:源 — 要移位的位的源对话框(默认) | 输入端口
指定是直接在对话框中输入要移动的位数,还是从输入端口继承值。
二进制位移位数:方向 — 移位的方向双向(默认)| 左 | 右
指定移位的方向:向左、向右或双向。
二进制位移位数:数值 — 二进制位移位数8(默认)| 标量 | 向量 | 数组
指定标量、向量或移位值数组。
| 如果方向为... | 则... |
|---|---|
| “左”或“右” | 使用正整数指定移位。 |
| “双向” | 使用正整数表示右移,使用负整数表示左移。 |
依赖关系:要启用此参数,请将二进制位移位数:源设置为对话框。
# 版本历史记录
- 在 2024b 之前推出
# 另请参阅
BitwiseOperator | CompareToConstant | CompareToZero | LogicalOperator | RelationalOperator