說明
使用“左移”指令,可以將參數 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”操作數中返回。
審核編輯:湯梓紅
-
西門子
+關注
關注
98文章
3138瀏覽量
117824 -
指令
+關注
關注
1文章
615瀏覽量
36275 -
函數
+關注
關注
3文章
4372瀏覽量
64313 -
數據類型
+關注
關注
0文章
237瀏覽量
13839 -
SCL
+關注
關注
1文章
243瀏覽量
17483
原文標題:西門子博途:SCL : SHL:左移
文章出處:【微信號:gh_a8b121171b08,微信公眾號:機器人及PLC自動化應用】歡迎添加關注!文章轉載請注明出處。
發布評論請先 登錄
評論