移位指令左移和右移指令根据移位的数据长度可分为字节型移位、字型移位和双字型移位;根据移位的方向可分为左移和右移, 还可以进行循环移位。指令有右移位指令、左移位指令、循环右移位指令、循环左移位指令。移位指令的功能:移位指令可以实现将数据向某个方向,移动指定的位数;在移位时,当无符号数进行移位时,溢出位会直接移除,另一端会由0进行补位;移位次数N与移位数据的长度有关,如N小于实际的数据长度,则执行N次移位。如N大于数据长度,则执行移位的次数等于 实际数据长度的位数。如N为0,则输出直接复制输入的值。表 移位指令表名称梯形图参数数据类型说明 左移指令ENBOOL使能输入ENOBOOL使能输出INBYTE,WORD,DWORD移位对象右移指令NUINT移动的位数OUTBYTE,WORD,DWORD移位后的结果有符号的数的移位:无符号值右移时,用零填充操作数左侧区域中空出的位。如果指定值有符号,则用符号位的信号状态填充空出的位。有符号值在左移时,按照无符号的情况进行移位即可。 左移指令:应用举例插入左移指令,在IN中设定待移位数值为“2#1001 1011 1111 1101” ,设定移位次数N