说明
使用“循环右移”指令,将参数 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文章
7452浏览量
163595 -
SCL
+关注
关注
1文章
239浏览量
17036 -
S7-1200
+关注
关注
11文章
331浏览量
17905 -
S7-1500
+关注
关注
3文章
300浏览量
6340
原文标题:西门子博途SCL:ROR:循环右移
文章出处:【微信号:gh_a8b121171b08,微信公众号:机器人及PLC自动化应用】欢迎添加关注!文章转载请注明出处。
发布评论请先 登录
相关推荐
如何使用博途平台上完成西门子的S7-1500与S7-1200以太网通信?
一步步教你使用博途平台,完成西门子最风行的两款PLC——S7-1500(1515 CPU)与S7-1200(1214 CPU)之间通信,有两种方法:S7通信和开放式用户通信。
西门子PLC编程软件博途下载
西门子PLC编程软件博途TIA V13 SP1 SIMATIC_WinCC_Runtime_Professional_SP1_for_V13---江西工控论坛有下载密码www.jx-gongkong.com
发表于 03-01 11:04
•60次下载
如何在博途平台调试西门子G120变频器
随着工业自动化迈向智能化越来越近,科技工作者不断的突破,近年在传动领域,采用工业以太网(Profinet)和变频器通讯非常广泛,今天我们简单的介绍下在博途平台调试西门子G120变频器。
评论