摘要:1.循环移位指令右、左循环移位指令(D)ROR(P)和(D)ROL(P)编号分别为FNC30和FNC31。执行这两条指令时,各位数据向右(或向左)循环移动n位,最后一次移出来的那一位同时存入进位标志M8022中,如图1所示。 图1 右、左循环移位指令的使用2.带进位的循环移位指令 带进位的循环右、左移位指令(D) RCR(P)和(D) RCL(P)编号分别为FNC32和FNC
1.循环移位指令
右、左循环移位指令(D)ROR(P)和(D)ROL(P)编号分别为FNC30和FNC31。执行这两条指令时,各位数据向右(或向左)循环移动n位,最后一次移出来的那一位同时存入进位标志M8022中,如图1所示。
图1
右、左循环移位指令的使用
2.带进位的循环移位指令
带进位的循环右、左移位指令(D)
RCR(P)和(D)
RCL(P)编号分别为FNC32和FNC33。执行这两条指令时,各位数据连同进位(M8022)向右(或向左)循环移动n位,如图2所示。
图2
带进位右、左循环移位指令的使用
使用ROR/ROL/RCR/RCL指令时应该注意:
1)目标操作数可取KnY,KnM,KnS,T,C,D,V和Z,目标元件中指定位元件的组合只有在K4(16位)和K8(32位指令)时有效。
2)16位指令占5个程序步,32位指令占9个程序步。
3)用连续指令执行时,循环