1. 比較指令
比較指令有 CMP( 比較 ) 和 ZCP (區(qū)間比較) 兩種,指令的助記符、功能、操作數(shù)、程序步如表 所 示。
( 1 )比較指令 CMP ( FNC10 )
比較指令 CMP 比較源操作數(shù) [S1] 和 [S2] 的內(nèi)容,比較的結(jié)果送到目標(biāo)操作數(shù) [D] 中去。如圖 所示,在 X0 為 ON 時(shí),比較指令 CMP 將十進(jìn)制常數(shù) 100 與計(jì)數(shù)器 C20 的當(dāng)前值比較,比較結(jié)果分三種情況分別使 M0 、 M1 、 M2 中的一個(gè)為 ON ,另兩個(gè)為 OFF 。在 X0 為 OFF 時(shí), CMP 不執(zhí)行, M0 、 M1 、 M2 的狀態(tài)保持不變。
( 2 )區(qū)間比較指令 ZCP(FNC11)
區(qū)間比較指令 ZCP 是將一個(gè)源操作數(shù) [S] 與兩個(gè)源操作數(shù) [S1] 和 [S2] 形成的區(qū)間比較,且 [S1] 不得大于 [S2] ,并將比較的結(jié)果送到 [D] 中。 ZCP 的應(yīng)用如圖所示,當(dāng) X0 為 ON 時(shí),將計(jì)數(shù)器 C30 的當(dāng)前值與區(qū)間 100~120 進(jìn)行比較。 C30 的當(dāng)前值< 100 時(shí), M3=ON ;若 100 ≤ C30 的當(dāng)前值≤ 120 時(shí), M4=ON ; C30 的當(dāng)前值> 150 時(shí), M5=ON 。若 X0 為 OFF ,則 ZCP 不執(zhí)行, M3 、 M4 、 M5 的狀態(tài)保持不變。
2 .傳送指令
( 1 )傳送指令 MOV ( FNC12 )
當(dāng) MOV 執(zhí)行的條件滿足時(shí),將源操作數(shù) [S] 中的數(shù)據(jù)傳送到目標(biāo)操作數(shù) [D] 中,若源操作數(shù)是一個(gè)變數(shù),則需用脈沖型傳送指令。 32 位數(shù)據(jù)需用 DMOV 傳送。如圖 所示,當(dāng) X0 為 ON 時(shí),執(zhí)行指令,將 [S] 中的數(shù)據(jù) K100 傳送到目標(biāo)元件 D10 中。當(dāng) X0 為 OFF 時(shí),指令不執(zhí)行。
( 2 )移位傳送指令 SMOV ( FNC13 )
當(dāng) SMOV 執(zhí)行的條件滿足時(shí),將 4 位十進(jìn)制源操作數(shù) [S] 中指定位數(shù)的數(shù)據(jù)傳送到 4 位十進(jìn)制目標(biāo)操作數(shù) [D] 中指定的位置。指令中的常數(shù) m1 、 m2 和 n 的取值范圍為 1 ~ 4 ,分別對(duì)應(yīng)個(gè)位~千位。十進(jìn)制數(shù)在存儲(chǔ)器中以二進(jìn)制數(shù)的形式存放,原數(shù)據(jù)和目標(biāo)數(shù)據(jù)的范圍均為 0 ~ 9999 。
在圖 中,當(dāng)執(zhí)行條件 X0 為 ON 時(shí),執(zhí)行移位傳送指令,將 D1 中的二進(jìn)制數(shù)轉(zhuǎn)換成 BCD 碼,然后將 D1 中的右起第 4 位( m1 = 4 )開(kāi)始的 2 位( m2=2 )傳送到目標(biāo)操作數(shù) D2 的右起第 3 位( n=3 )和第 2 位,傳送完畢后, D2 中的 BCD 碼自動(dòng)轉(zhuǎn)換為二進(jìn)制碼,且 D2 中的第 4 位、第 1 位保持不變。










