说明
使用“循环右移”指令,将参数 IN 的内容逐位向右循环移位,并将结果赋值给指定的操作数。参数 N 用于指定应将特定值循环移位的位数。用移出的位填充因循环移位而空出的位。
如果参数 N 的值为“0”,则将输入 IN 的值作为结果。
如果参数 N 的值大于可用位数,则输入 IN 中的操作数值将循环移动指定位数个位。
下图显示了如何将 DWORD 数据类型操作数的内容向右循环移动 3 位:
参数
下表列出了该指令的参数:
参数 | 声明 | 数据类型 | 存储区 | 说明 | |
---|---|---|---|---|---|
S7-1200 | S7-1500 | ||||
IN | Input | 位字符串、整数 | 位字符串、整数 | I、Q、M、D、L | 要循环移位的值 |
N | Input | USINT、UINT、UDINT | USINT、UINT、UDINT、ULINT | I、Q、M、D、L | 要将值进行 (IN) 循环移位的位数 |
函数值 | 位字符串、整数 | 位字符串、整数 | I、Q、M、D、L | 指令的结果 |
示例
以下示例说明了该指令的工作原理:
SCL |
---|
"Tag_Result" := ROR(IN := "Tag_Value", N := "Tag_Number"); |
下表将通过具体的操作数值对该指令的工作原理进行说明:
参数 | 操作数 | 值 |
---|---|---|
IN | Tag_Value | 0000 1111 1001 0101 |
N | Tag_Number | 5 |
函数值 | Tag_Result | 1010 1000 0111 1100 |
将“Tag_Value”操作数的内容将向右循环移动 5 位。该指令的结果作为函数值在“Tag_Result”操作数中返回。
审核编辑:刘清
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。
举报投诉
-
存储器
+关注
关注
38文章
7148浏览量
161985 -
SCL
+关注
关注
1文章
238浏览量
16872 -
S7-1200
+关注
关注
11文章
328浏览量
17222 -
S7-1500
+关注
关注
3文章
298浏览量
5843
原文标题:西门子博途SCL:ROR:循环右移
文章出处:【微信号:gh_a8b121171b08,微信公众号:机器人及PLC自动化应用】欢迎添加关注!文章转载请注明出处。
发布评论请先 登录
相关推荐
西门子变频器如何选型_西门子变频器选型注意哪些
本文开始介绍了西门子变频器的概念,其次阐述了西门子变频器的参数设置,最后介绍了西门子变频器的选型方法以及选型注意事项。
博世和西门子哪个好_博世和西门子的关系
本文开始阐述了博世和西门子的关系以及分析了西门子和博世哪个更好,其次分析了西门子和博世的冰箱哪个更好,最后介绍了博世和西门子家电集团在中国的发展。
西门子S7 SCL编程知识
本文可以作为 S7-SCL 编程语言的使用参考资料,希望读者通过对本章的阅读,能够更快更好
地学习 S7-SCL 编程语言。西门子ᨀ供了 S7-SCL 编程语言的详尽手册,在安装 S
发表于 04-19 17:54
•7次下载
评论