S7-300/400只有32位的循环移位指令,和32位加CC1的循环移位指令。下面是我编的程序,MD10和MD14组成64位数据,MD10在高32位。WW.W_PLCJS_COM-PLC-技.术_网
在I0.0的上升沿,分别将MD10和MD14循环左移1位,然后交换它们的最低位M13.0和M17.0的值,就能实现64位数据的循环左移1位。——可——编——程——控-制-器-技——术——门——户
A I 0.0WWW_PLCJS※COM-PLC-技×术_网(可编程控※制器技术门户)
FN M 1.0WWW_PLC※JS_COM-PmLC-技.术_网
JCN _001 //不是I0.0的上升沿则跳转——可——编——程——控-制-器-技——术——门——户
L MD 10P.L.C.技.术.网——可编程控制器技术门户
RLD 1 //双字左移一位WW.W_PLCJS_COM-PLC-技.术_网
T MD 10WWcW_PLCJS_COM-PLC-技.术_网
L MD 14plcjs.技.术_网
RLD 1 //双字左移一位plcjs.技.术_网
T MD 14WWW※PLCJS_COM-PL#C-技.术_网(可编※程控※制器技术门户)
A M 13.0WWW_P※LCJS_COM-PLC-)技.术_网
= M 1.1 //暂存M13.0plcjs.技.术_网
A M 17.0WWW_PLCJS@_COM%-PLC-技.术_网
S M 13.0 //以下程序交换M13.0和M17.0的值WWW_P※LCJS_CO※M-PLC-技-.术_网
AN M 17.0P_L_C_技_术_网——可——编——程——控-制-器-技——术——门——户
R M 13.0WWW_PLCJ-S_COM-PLC-技.术_网(可-编程控-制器技术-门户)
A M 1.1P_L_C_技_术_网——可——编——程——控-制-器-技——术——门——户
S M 17.0WWW_P※LCJS_CO※M-PLC-技-.术_网
AN M 1.1WWW※PLCJS_COM-PL#C-技.术_网(可编※程控※制器技术门户)
R M 17.0WWW_PLC※JS_COM-PmLC-技.术_网
_001: NOP 0plcjs.技.术_网
此程序已用仿真验证,下图中的修改数值是移位之前MD10和MD14的值,状态值是循环左移4位后的值。
P_L_C_技_术_网——可——编——程——控-制-器-技——术——门——户
WWW_PLCJS※COM-PLC-技×术_网(可编程控※制器技术门户)