功能介紹
(片内RAM)傳送指令MOV(Move)把一個字節、字或雙字的操作數從源位置傳送到目的位置,源操作數的内容不變。可以實現立即數到通用寄存器或主存的傳送,通用寄存器與通用寄存器、主存或段寄存器之間的傳送,主存與段寄存器之間的傳送。該操作屬于複制性質,不屬于搬家性質。
格式:MOV DST,SRC(從SRC複制數值,覆蓋DST)。
代碼範例
MOV EAX,#050aH ;将十六進制數050a 傳送到通用寄存器eax中
MOV DI,BX(寄存器到寄存器之間傳數)
MOV ES,AX(通用寄存器與段寄存器之間傳數)
MOV AX,DS(段寄存器至通用寄存器)
MOV AL,23H(将立即數"複制"到寄存器)
MOV [2000H],02H(直接尋址)
MOV [2061H],BX
注意事項
目的操作數要與源操作數類型要一緻,不能一個是字,一個是字節
目的操作數要和源操作數類型之一必須要有明确的類型
立即數不能作為目的操作數
不能用立即尋址方式給段寄存器傳數
源操作數和目的操作數不能同時為存儲器操作數,即存儲單元之間不能用MOV指令直接傳送
CS和IP不能作為目的操作數,但CS可以作為源操作數。
段寄存器之間不能用MOV指令直接傳送
在傳送字單元時,遵循“高字節存放在高地址,低字節存放在低地址”的原則。
備注說明
1. OPRD1 為目的操作數,可以是寄存器、存儲器、累加器.
OPRD2 為源操作數,可以是寄存器、存儲器、累加器和立即數.
2. MOV 指令分為以下四種情況:
<1> 寄存器與寄存器之間的數據傳送指令
<2> 立即數到通用寄存器數據傳送指令
<3> 寄存器與存儲器之間的數據傳送指令
<4> 立即數到存儲器的數據傳送
3. 本指令不影響狀态标志位
彙編還提供許多mov變體,如movzx,movsx,MOVS等等