傳送指令也是我們在編程過程中經(jīng)常會要使用到的指令,我們也要掌握好它。所謂的傳送指令就是把一個存儲單元(輸入端)的數(shù)值復制到另一個存儲單元(輸出端)里面,我們的傳送指令經(jīng)常是用于對存儲單元的清零或者程序的初始化等場合。
傳送指令有單個數(shù)據(jù)傳送指令MOV,以及塊傳送指令BLKMOV,根據(jù)數(shù)據(jù)的類型它又可以分為字節(jié)、字、雙字或者實數(shù)等這幾種情況,不過要注意的是塊傳送指令沒有實數(shù)類型的指令。除此之外,還有字節(jié)交換指令SWAP,字節(jié)傳送立即讀指令和字節(jié)傳送立即寫指令,當然這些指令用的相對較少,對這幾個指令我們就先了解一下。
傳送指令MOV的輸入IN可以是常數(shù)、IB、QB、VB、SMB、LB、SB,輸出可以是IB、QB、VB、SMB、LB、SB,但是要注意輸出是沒有常數(shù)的,如果輸出是常數(shù),那么是會提示錯誤的。
除此之外,我們在使用傳送指令的時候,要注意的是輸入和輸出的數(shù)據(jù)類型是要一致的,如果不一致,同樣也是會提示錯誤的。
那么數(shù)據(jù)塊傳送指令BLKMOV,它是將字節(jié)或字或雙字數(shù)目N從輸入存儲單元傳送到輸出存儲單元,也就是說塊傳送指令它是批量傳送的,注意N的范圍是1~255,使用的時候要注意不能超限。那么下面這條指令也就是將VB0~VB9的里面的數(shù)據(jù)傳送到VB50~VB59里面。
然后再學習一下字節(jié)交換指令SWAP,字節(jié)交換指令的功能是交換字的最高位字節(jié)和最低位字節(jié),下面就舉個例子來說明一下指令的用法,那么以下這條指令是對VW0進行字節(jié)交換,因為VW0=VB0 VB1,它是低地址在前高地址在后的,執(zhí)行了指令之后則變成VB1 VB0,變?yōu)楦叩刂吩谇暗偷刂吩诤罅恕?/P>
下面再繼續(xù)看一下字節(jié)傳送立即讀指令和字節(jié)傳送立即寫指令,它跟前面講到的立即指令是一樣的,而且它也是只針對I/O地址的。字節(jié)傳送立即讀指令是對輸入I進行讀操作,字節(jié)傳送立即寫指令是對輸出Q進行寫操作。
那么今天就學習了傳送指令,傳送指令也還算是比較簡單的是吧?那么之后就要學習一些相對難一些的指令了,你準備好了嗎?