山東省濱州市西門子中國總代理-西門子選型-西門子技術支持-西門子維修服務
| 更新時間 2024-12-27 09:10:00 價格 請來電詢價 變頻器 西門子代理商 觸摸屏 西門子一級代理 伺服電機 西門子一級總代理 聯系電話 18126392341 聯系手機 15267534595 聯系人 梁濤 立即詢價 |
可以在基本指令目錄下的移位和循環移位子文件夾中調用以下指令:
- SHR(邏輯右移指令)
- SHL(邏輯左移指令)
- ROR(循環右移指令)
- ROL(循環左移指令)
這些指令用于執行位移操作,并在PLC編程中具有重要作用。您可以根據需要在程序中調用這些指令來實現位移操作。
SHR指令
可以使用“右移”指令將輸入IN中的數值按照位數向右移動,并在輸出OUT中得到結果。參數N用于指定要移動的位數。當N為0時,輸入IN的值會直接復制到輸出中。如果N的值超過了可用位數,輸入IN的值會向右移動直到可用位數。
對于無符號數據類型(如UInt,Word),移動時會在左側空出的位用0填充;而對于有符號數據類型(如Int),則會用符號位的狀態來填充空出的位。可以在指令框的數據類型下拉菜單中選擇合適的數據類型。下面圖示展示了如何將整數類型的操作數內容向右移動4位。
示例
以下示例說明了該指令的工作原理:
如果操作數“TagIn”的信號狀態為“1”,則執行右移指令。操作數“TagIn_Value”的內容將向右移動3位,結果發送到輸出“TagOut_Value”中。如果指令執行成功,將使能輸出ENO的信號狀態為“1”,同時將輸出“TagOut”置位。
可以利用“左移”指令對輸入操作數IN的數值進行左移操作,并通過輸出OUT查看結果。參數N用于指定要左移的位數。當N為0時,將直接將輸入操作數IN的值復制到輸出OUT的操作數中。
若N的值超過可用的位數,則操作數IN的值將向左移動直到可用的位數。在移位時,會用0填充操作數右側空出的位。您可以在指令框下拉列表中選擇適當的數據類型。下圖描述了如何將WORD數據類型的操作數內容向左移動6位。
示例
以下示例說明了該指令的工作原理:
如果“TagIn”信號狀態為“1”,則執行左移指令,將“TagIn_Value”的內容向左移動4位,并將結果發送到“TagOut_Value”。成功執行后,將使“ENO”的信號狀態為“1”,并觸發輸出“TagOut”置位。
能夠利用“循環右移”指令對輸入IN的操作數內容進行按位循環右移,并且結果存儲在輸出OUT中。該指令需要一個參數N,用于確定要循環移位的位數。
如果N為0,輸入IN的值會直接復制到輸出OUT。如果N的值超出操作數的位數,則操作數IN的值依然會按照可用位數進行循環移位。在移位過程中,移出的位會用來填充循環移位而產生的空位。
您可以在指令框的數據類型下拉菜單中選擇合適的數據類型。圖示說明了如何將DWORD數據類型的操作數內容向右循環移動3位:
示例
以下示例說明了該指令的工作原理:
如果“TagIn”信號狀態為“1”,則執行循環右移指令,將“TagIn_Value”的內容向右循環移動5位,并將結果發送到“TagOut_Value”。如果指令執行成功,將使“ENO”的信號狀態為“1”,并觸發輸出“TagOut”置位。
可以使用“循環左移”指令對輸入IN的操作數內容進行按位循環左移,結果存儲在輸出OUT中。該指令需要一個參數N,用于確定要循環移位的位數。如果N為0,輸入IN的值會直接復制到輸出OUT。
如果N的值超出操作數的位數,則操作數IN的值依然會按照可用位數進行循環移位。在移位過程中,移出的位會用來填充循環移位而產生的空位。
您可以在指令框的數據類型下拉菜單中選擇合適的數據類型。圖示說明了如何將DWORD數據類型的操作數內容向左循環移動3位:
示例
以下示例說明了該指令的工作原理:
如果“TagIn”信號狀態為“1”,則執行循環左移指令,將“TagIn_Value”的內容向左循環移動5位,并將結果發送到“TagOut_Value”。如果指令執行成功,將使“ENO”的狀態為“1”,并觸發輸出“TagOut”置位。
聯系方式
- 電 話:18126392341
- 聯系人:梁濤
- 手 機:15267534595
- 微 信:15267534595