S7-200和S7-1200有字节、字和双字的循环移位指令。S7-300/400只有双字循环移位指令。在它的基础上,可以实现任意位的循环移位,下面以8位循环移位为例。本例来源于作者的《跟我动手学S7-300/400 PLC》。
MB0是双字MD0的最高字节,MD0每次循环左移1位后,最高位M0.7的数据被移到MD0最低位的M3.0(见下图)。为了实现MB0的循环移位,移位后如果M3.0为1状态,将MB0的最低位M0.0置位为1,反之将M0.0复位为0,相当于MB0的最高位M0.7移到了MB0的最低位M0.0。
这个是从其他帖子里截下来的一段话,中间的“为了实现MB0的循环移位,移位后如果M3.0为1状态,将MB0的最低位M0.0置位为1,反之将M0.0复位为0”,这句话我可以理解,但是后面的那句“相当于MB0的最高位M0.7移到了MB0的最低位M0.0”,这个是什么意思呢??? 为什么又相当于M0.7移到M0.0呢??? 请各位大侠帮忙解释下!再次感激不尽。