移动指令有何功能?如何使用? 移位指令分为左、右移位和循环左、右移位及移位寄存器指令三大类。左移和右移指令的功能是将输入数据IN左移或右移N位后,把结果送到OUT中。主要包括:①字节移位指令,SLB-字节左移指令,SRB-字节右移指令;②字移位指令,SLW-字左移指令,SRW-字右移指令;③双字移位指令,SLD-双字左移指令,SRD-双字右移指令。 1)循环移位指令包括 (1)字节循环移位指令:RLB-字节循环左移指令;RRB-字节循环右移指令。 (2)字循环移位指令:RLW-字循环左移指令;RRW-字循环右移指令。 (3)双字循环移位指令:RLD-双字循环左移指令;RRD-双字循环右移指令。 2)左、右移位指令的特点 (1)被移位的数据是无符号的。 (2)在移位时,存放被移位数据的编程件的移出端与特殊继电器SM1.1相连,移出位送SM1.1,另一端补零。 (3)移位次数Ⅳ与移位数据的长度有关,若Ⅳ小于实际的数据长度,则执行Ⅳ次移位;若Ⅳ大于数据长度,则执行移位的次数等于实际数据长度的位数。 (4)移位数据Ⅳ为字节型数据。 (5)左、右移位指令影响到的特殊继电器有SM1.0(零)、SM1.1(溢出)。 (6)影响ENO正常工作的出错条件为SM4.3、0006。 3)循环左、右移位指令的特点 (1)被移位的数据是无符号的。 (2)在移位时,存放被移位数据的编程件的移出端与另一端相连,又与特殊继电器SM1.1相连,移出位在被移到另一端的同时,也进入SM1.1;另一端自动补零。 (3)移位次数Ⅳ与移位数据的长度有关,若Ⅳ小于实际的数据长度,则执行Ⅳ次移位;若Ⅳ大于数据长度,则执行移位的次数为Ⅳ除以实际数据长度的余数。 (4)移位次数Ⅳ为字节型数据。 (5)循环移位指令影响的特殊继电器有SM1.1 (0)、SM1.1(溢出)。 (6)影响允许输出ENO正常工作的出错条件为SM4.3,0006。 4)左移和右移指令 左移和右移指令的功能是将输入数据IN左移或右移N位后,把结果送到OUT中。 (1)字节移位指令: SLB-字节左移指令; SRB-字节右移指令。 指令格式如下:
(2)字移位指令: SLW-字左移指令; SRW-字右移指令。 指令格式如下:
(3)双字移位指令: SLD-双字左移指令; SRD-双字右移指令。 指令格式如下:
5)循环左移和循环右移指令 (1)字节循环移位指令: RLB-字节循环左移指令; RRB-字节循环右移指令。 指令格式如下:
(2)字循环移位指令: RLW-字循环左移指令; RRW-字循环右移指令。 指令格式如下:
(3)双字循环移位指令: RLD-双字循环左移指令; RRD-双字循环右移指令。 指令格式如下:
6)移位寄存器指令 SHRB:移位寄存器指令。 指令格式如下:
(1)移位寄存器的数据类型无字节型、字型、双字型之分。 (2)移位寄存器最低位的地址为S_BIT;最高位地址的计算方法为MSB=(N-1+7S BIT的位号))/8,最高位的字节号为MSB的商+S BIT的字节号,最高位的位号为MSB的余数。 (3)移位寄存器的移出端与SM1.1连接。 (4)移位寄存器指令影响的特殊继电器为SM1.0(零)、SM1.1(溢出)。 (5)影口向ENO正常工作的出错条件为SM4.3(运行时间)、0006(问接寻址)、0091(操作数超界)、0092(计数区错误)。
2024最新激活全家桶教程,稳定运行到2099年,请移步至置顶文章:https://sigusoft.com/99576.html
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。 文章由激活谷谷主-小谷整理,转载请注明出处:https://sigusoft.com/62239.html