说明
使用“左移”指令,可以将参数 IN 的内容逐位向左移动,并将结果作为函数值返回。参数 N 用于指定应将特定值移位的位数。
如果参数 N 的值为“0”,则将参数 IN 的值作为结果。
如果参数 N 的值大于位数,则参数 IN 的值将向左移动该位数个位置。
结果值中因移位而空出的位将用 0 填充。
下图显示了如何将 WORD 数据类型操作数的内容向左移动 6 位:
参数
下表列出了该指令的参数:
参数 | 声明 | 数据类型 | 存储区 | 说明 | |
---|---|---|---|---|---|
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" := SHL(IN := "Tag_Value", N := "Tag_Number"); |
下表将通过具体的操作数值对该指令的工作原理进行说明:
参数 | 操作数 | 值 |
---|---|---|
IN | Tag_Value | 0011 1111 1010 1111 |
N | Tag_Number | 4 |
函数值 | Tag_Result | 1111 1010 1111 0000 |
将“Tag_Value”操作数的值将向左移动 4 位。该指令的结果作为函数值在“Tag_Result”操作数中返回。
审核编辑:汤梓红
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。
举报投诉
-
西门子
+关注
关注
92文章
2853浏览量
113832 -
指令
+关注
关注
1文章
580浏览量
35386 -
函数
+关注
关注
3文章
3911浏览量
61367 -
数据类型
+关注
关注
0文章
229浏览量
13512 -
SCL
+关注
关注
1文章
239浏览量
16886
原文标题:西门子博途:SCL : SHL:左移
文章出处:【微信号:gh_a8b121171b08,微信公众号:机器人及PLC自动化应用】欢迎添加关注!文章转载请注明出处。
发布评论请先 登录
相关推荐
博世和西门子哪个好_博世和西门子的关系
本文开始阐述了博世和西门子的关系以及分析了西门子和博世哪个更好,其次分析了西门子和博世的冰箱哪个更好,最后介绍了博世和西门子家电集团在中国的发展。
西门子200PLC指令详解——位逻辑指令
本文所描述的指令符合SIMATIC和IEC1131指令,不仅可用于 西门子S7-200PLC ,其他小型PLC也可作为参考。比如 SMART200的PLC . 1.S7-200存储器范围如下表所示
发表于 04-19 11:07
•5次下载
如何使用西门子1200的脉冲指令?
西门子1200PLC的脉冲沿指令是一种非常重要的指令,它可以检测输入信号的上升沿或下降沿,并在检测到沿时产生一个脉冲。
发表于 05-23 09:20
•1.1w次阅读
评论