───────────────────────────────────────
它們在存貯器和暫存器、暫存器和輸入輸出埠之間傳送資料.
1. 通用資料傳送指令.
mov 傳送字或位元組.
movsx 先符號擴充套件,再傳送.
movzx 先零擴充套件,再傳送.
push 把字壓入堆疊.
pop 把字彈出堆疊.
pusha 把ax,cx,dx,bx,sp,bp,si,di依次壓入堆疊.
popa 把di,si,bp,sp,bx,dx,cx,ax依次彈出堆疊.
pushad 把eax,ecx,edx,ebx,esp,ebp,esi,edi依次壓入堆疊.
popad 把edi,esi,ebp,esp,ebx,edx,ecx,eax依次彈出堆疊.
bswap 交換32位暫存器裡位元組的順序
xchg 交換字或位元組.( 至少有乙個運算元為暫存器,段暫存器不可作為運算元)
cmpxchg 比較並交換運算元.( 第二個運算元必須為累加器al/ax/eax )
xadd 先交換再累加.( 結果在第乙個運算元裡 )
xlat 位元組查表轉換.
── bx 指向一張 256 位元組的表的起點, al 為表的索引值 (0-255,即
0-ffh); 返回 al 為查表結果. ( [bx+al]->al )
2. 輸入輸出埠傳送指令.
in i/o埠輸入. ( 語法: in 累加器, )
out i/o埠輸出. ( 語法: out ,累加器 )
輸入輸出埠由立即方式指定時, 其範圍是 0-255; 由暫存器 dx 指定時,
其範圍是 0-65535.
3. 目的位址傳送指令.
lea 裝入有效位址.
例: lea dx,string ;把偏移位址存到dx.
lds 傳送目標指標,把指標內容裝入ds.
les 傳送目標指標,把指標內容裝入es.
lfs 傳送目標指標,把指標內容裝入fs.
lgs 傳送目標指標,把指標內容裝入gs.
lss 傳送目標指標,把指標內容裝入ss.
4. 標誌傳送指令.
lahf 標誌暫存器傳送,把標誌裝入ah.
sahf 標誌暫存器傳送,把ah內容裝入標誌暫存器.
pushf 標誌入棧.
popf 標誌出棧.
pushd 32位標誌入棧.
popd 32位標誌出棧.
彙編指令速查 之一 資料傳輸指令
在存貯器和暫存器 暫存器和輸入輸出埠之間傳送資料.1.通用資料傳送指令.mov 傳送字或位元組.movsx 先符號擴充套件,再傳送.movzx 先零擴充套件,再傳送.push 把字壓入堆疊.pop 把字彈出堆疊.pusha 把ax,cx,dx,bx,sp,bp,si,di依次壓入堆疊.popa 把d...
資料傳輸指令 mov
mov指令 格式 mov dst,src dst為目的運算元,src為源運算元 使 dst src 用法 1 通用暫存器之間的資料傳遞 mov reg,reg eg mov al bl 2 立即數送通用暫存器 mov reg data eg mov al 4 3 通用暫存器和儲存器之間傳送 mov ...
mov指令和資料傳輸
1.mov指令的順序是從右到左,如mov a,b,則把b的值複製給a。如 mov 目的運算元 a 源運算元 b 即a b 2.除了之前提到的movb,movw,movl,movq,還有movabsq,代表傳送絕對的四字,movq雖可傳四字,但一旦要傳立即數,則只能傳32位補碼表示的立即數,隨後把它符...