西門子PLC循環(huán)左、右移位指令的使用,了解下
西門子PLC循環(huán)左、右移位指令的使用
循環(huán)移位將移位數(shù)據(jù)存儲單元的首尾相連,同時又與溢出標(biāo)志SM1.1連接,SM1.1用來存放被移出的位。指令格式見表6。
(1)循環(huán)左移位指令(ROL)
使能輸入有效時,將IN輸入無符號數(shù)(字節(jié)、字或雙字)循環(huán)左移N位后,將結(jié)果輸出到OUT所指定的存儲單元中,移出的最后一位的數(shù)值送溢出標(biāo)志位SM1.1。當(dāng)需要移位的數(shù)值是零時,零標(biāo)志位SM1.0為1。
(2)循環(huán)右移位指令(ROR)
使能輸入有效時,將IN輸入無符號數(shù)(字節(jié)、字或雙字)循環(huán)右移N位后,將結(jié)果輸出到OUT所指定的存儲單元中,移出的最后一位的數(shù)值送溢出標(biāo)志位SM1.1。當(dāng)需要移位的數(shù)值是零時,零標(biāo)志位SM1.0為1。
(3)移位次數(shù)N≥數(shù)據(jù)類型(B、W、D)時的移位位數(shù)的處理
如果操作數(shù)是字節(jié),當(dāng)移位次數(shù)N≥8時,則在執(zhí)行循環(huán)移位前,先對N進行模8操作(N除以8后取余數(shù)),其結(jié)果0-7為實際移動位數(shù)。
如果操作數(shù)是字,當(dāng)移位次數(shù)N≥16時,則在執(zhí)行循環(huán)移位前,先對N進行模16操作(N除以16后取余數(shù)),其結(jié)果0-15為實際移動位數(shù)。
如果操作數(shù)是雙字,當(dāng)移位次數(shù)N≥32時,則在執(zhí)行循環(huán)移位前,先對N進行模32操作(N除以32后取余數(shù)),其結(jié)果0-31為實際移動位數(shù)。
(4)使ENO = 0的錯誤條件:0006(間接尋址錯誤),SM4.3(運行時間)。
循環(huán)移位將移位數(shù)據(jù)存儲單元的首尾相連,同時又與溢出標(biāo)志SM1.1連接,SM1.1用來存放被移出的位。指令格式見表6。
(1)循環(huán)左移位指令(ROL)
使能輸入有效時,將IN輸入無符號數(shù)(字節(jié)、字或雙字)循環(huán)左移N位后,將結(jié)果輸出到OUT所指定的存儲單元中,移出的最后一位的數(shù)值送溢出標(biāo)志位SM1.1。當(dāng)需要移位的數(shù)值是零時,零標(biāo)志位SM1.0為1。
(2)循環(huán)右移位指令(ROR)
使能輸入有效時,將IN輸入無符號數(shù)(字節(jié)、字或雙字)循環(huán)右移N位后,將結(jié)果輸出到OUT所指定的存儲單元中,移出的最后一位的數(shù)值送溢出標(biāo)志位SM1.1。當(dāng)需要移位的數(shù)值是零時,零標(biāo)志位SM1.0為1。
(3)移位次數(shù)N≥數(shù)據(jù)類型(B、W、D)時的移位位數(shù)的處理
如果操作數(shù)是字節(jié),當(dāng)移位次數(shù)N≥8時,則在執(zhí)行循環(huán)移位前,先對N進行模8操作(N除以8后取余數(shù)),其結(jié)果0-7為實際移動位數(shù)。
如果操作數(shù)是字,當(dāng)移位次數(shù)N≥16時,則在執(zhí)行循環(huán)移位前,先對N進行模16操作(N除以16后取余數(shù)),其結(jié)果0-15為實際移動位數(shù)。
如果操作數(shù)是雙字,當(dāng)移位次數(shù)N≥32時,則在執(zhí)行循環(huán)移位前,先對N進行模32操作(N除以32后取余數(shù)),其結(jié)果0-31為實際移動位數(shù)。
(4)使ENO = 0的錯誤條件:0006(間接尋址錯誤),SM4.3(運行時間)。
本文標(biāo)簽:西門子PLC循環(huán)左、右移位指令的使用,了解下
* 由于無法獲得聯(lián)系方式等原因,本網(wǎng)使用的文字及圖片的作品報酬未能及時支付,在此深表歉意,請《西門子PLC循環(huán)左、右移位指令的使用,了解下》相關(guān)權(quán)利人與機電之家網(wǎng)取得聯(lián)系。
關(guān)于“西門子PLC循環(huán)左、右移位指令的使用,了解下”的更多資訊










