數(shù)據(jù)裝載與傳送指令用于在各個(gè)存儲(chǔ)區(qū)之間交換數(shù)據(jù)及存儲(chǔ)區(qū)與過程i/o模塊之間交換數(shù)據(jù)。cpu在每次掃描中無條件執(zhí)行數(shù)據(jù)裝載與傳送指令,而不受rlo的影響。
數(shù)據(jù)裝載指令l( load)和數(shù)據(jù)傳送指令t(transmit)可以完成下列區(qū)域的數(shù)據(jù)交換:
①輸入/輸出存儲(chǔ)區(qū)與位存儲(chǔ)區(qū)m、過程輸入存儲(chǔ)區(qū)pi、過程輸出存儲(chǔ)區(qū)pq、定時(shí)器t、計(jì)數(shù)器c、數(shù)據(jù)區(qū)d的數(shù)據(jù)交換。
②過程輸入/輸出存儲(chǔ)區(qū)pl/pq與位存儲(chǔ)區(qū)m、定時(shí)器t、計(jì)數(shù)器c、數(shù)據(jù)區(qū)d的數(shù)據(jù)交換。
③定時(shí)器t、計(jì)數(shù)器c與過程輸入/輸出存儲(chǔ)區(qū)pi/pq、位存儲(chǔ)區(qū)m、數(shù)據(jù)區(qū)d的數(shù)據(jù)交換。
數(shù)據(jù)裝載l和數(shù)據(jù)傳送t指令通過累加器進(jìn)行數(shù)據(jù)交換。累加器是cpu中的一種專用寄存器,可以作為“緩沖器”。數(shù)據(jù)的傳送和變換一般是通過累加器進(jìn)行的,而不是在存儲(chǔ)區(qū)直接進(jìn)行。在s7-300/400 plc中,有兩個(gè)32位的累加器,即累加器1與累加器2,當(dāng)執(zhí)行裝入指令l時(shí),將數(shù)據(jù)裝入到累加器1中,累加器1中原有的數(shù)據(jù)被移人到累加器2中,累加器2中原有的數(shù)據(jù)被覆蓋。當(dāng)執(zhí)行傳送指令t時(shí),將累加器1中的數(shù)據(jù)復(fù)制到目的存儲(chǔ)區(qū)中,而累加器1中的內(nèi)容保持不變。l和t指令可以對(duì)字節(jié)(8位)、字(16位)、雙字(32位)數(shù)據(jù)進(jìn)行操作,當(dāng)數(shù)據(jù)長(zhǎng)度小于32位時(shí),數(shù)據(jù)在累加器1中右對(duì)齊(低位對(duì)齊),其余各位填0。
裝入和傳送操作有3種尋址方式:立即尋址、直接尋址和間接尋址。
lad編程語(yǔ)言指令只有賦值指令,stl編程語(yǔ)言指令分為裝載和傳遞指令,其中包含地址寄存器的處理指令。