西門子s7200移位循環指令及字符串指令怎麼使用
- 電腦
- 關注:2.2W次
在移位指令中左移一位相當於乘以2; 右移一位相當於除以2。最後被移出的位會被複製到SM1.1; 如果移位操作的結果為0或被移位的值是零時,SM1. 0被置位。SM1. 0和SM1. 1會自動復位。字節操作是無符號的。對於字和雙字操作,號數據類型時,符號位也被移位。
移位指令
(01)左移/右移指令左移一位,相當於乘以2右移一位,相當於除以2移位指令對移出的位自動補零。如果位數N大於或等於最大允許值(對於字節操作為8,對於字操作為16,對於雙字操作為32),那麼移位操作的次數為最大允許值(相當於對此數值清零)。
(02)循環移位如果位數N大於或者等於最大允許值(對於字節操作為8,對於字操作為16,對於雙字操作為32),S7--200在執行循環移位之前,會執行取模操作,得到一個有效的移位次數。移位位數的取模操作的結果,對於字節操作是0到7,對於字操作是0到15,而對於雙字操作是0到31。
(03)移位寄存器指令把輸入的DATA數值移入移位寄存器。其中,S_BIT指定移位寄存器的最低位,N指定移位寄存器的長度和移位方向(正向移位=N,反向移位=-N)。
字符串
(01)把"aaaaaa Hello World"付給VB0;複製其中的"Hello World"到VB30,把VB30複製到VB100;計算VB100的字符串長度;
(02)從OUT定義的字符位置開始,在字符串VB100裏找符合IN2的字符串。找到後把該字符串的第一個字符位置寫入到OUT裏。如未找到符合的字符串,OUT被設為0。
(03)從OUT定義的字符位置開始,在字符串VB100裏找符合IN2裏定義的任何字符。把第一個找到的字符位置寫入到OUT裏。如如未找到符合的字符,OUT被設為0。
特別提示
字符串存儲器不要相互覆蓋
- 文章版權屬於文章作者所有,轉載請註明 https://miaozhigu.com/sm/diannao/d7elm.html