运营商:SHL
IEC 运算符用于将操作数向左按位移位。
erg := SHL (in, n)
in: 左移的操作数
n: 要移位的位数 in 向左转
重要
如果 n 超过数据类型宽度,则取决于目标系统如何 BYTE, WORD, DWORD, 和 LWORD 操作数被填充。目标系统导致填充零或 n MOD <寄存器大小>.
重要
注意位数 CODESYS 用于此操作,由输入变量的数据类型定义 in.
例 119. 例子
结果为 erg_byte 和 erg_word 是不同的,虽然的值 in_byte 和 in_word 输入变量相同,输入变量的数据类型不同。
英石
PROGRAM shl_st VAR in_byte : BYTE := 16#45; (* 2#01000101 ) in_word : WORD := 16#0045; (* 2#0000000001000101 ) erg_byte : BYTE; erg_word : WORD; n: BYTE := 2; END_VAR erg_byte := SHL(in_byte,n); (* Result is 16#14, 2#00010100 *) erg_word := SHL(in_word,n); (* Result is 16#0114, 2#0000000100010100 *)
FBD
