MOV指令可以在CPU內或CPU和存儲器之間傳送字或字節,它傳送的信息可以從寄存器到寄存器,立即數到寄存器,立即數到存儲單元,從存儲單元到寄存器,從寄存器到存儲單元,從寄存器或存儲單元到除CS外的段寄存器(注意立即數不能直接送段寄存器),從段寄存器到寄存器或存儲單元。
但是注意
(1) MOV指令中的源操作數絕對不能是立即數和代碼段CS寄存器;
(2) MOV指令中絕對不允許在兩個存儲單元之間直接傳送數據;
(3) MOV指令中絕對不允許在兩個段寄存器之間直接傳送數據;
(4) MOV指令不會影響標志位
例:MOV AX,DATA_SEG
MOV DS,AX
注意:段寄存器(段地址)必須通過寄存器如AX寄存器進行立即數的初始化。
例: MOV AL,‘E’
把立即數(字符E的ASC碼)送到AL寄存器。
例: MOV BX,OFFSET TABLE
將TABLE的偏移地址(而不是內容)送到BX寄存器中。
其中OFFSET為屬性操作符,表示的是將其后的符號地址的值(不是內容)作為操作數。
例 MOV AX,Y[BP][SI]
把地址為16d×(SS)十(BP)十(SI)十位移量Y的存儲單元的內容送給AX寄存器