![](https://csdnimg.cn/release/download_crawler_static/86135153/bg6.jpg)
1.数据传送 MOV 指令
一般格式:MOV OPRD1,OPRD2
MOV 是操作码,OPRD1 和 OPRD2 分别是目的操作数和源操作数。
功能:完成数据传送
具体来说,一条数据传送指令能实现:
⑴CPU 内部寄存器之间数据的任意传送(除了代码段寄存器 CS 和指令指针 IP 以
外)。
MOV AL,BL;字节传送
MOV CX,BX;字传送
MOV DS,BX
⑵立即数传送至 CPU 内部的通用寄存器组(即 AX、 BX、CX、DX、BP、SP、SI、DI),
MOV CL,4
MOV AX,03FFH
MOV SI,057BH
⑶CPU 内部寄存器(除了 CS 和 IP 以外)与存储器(所有寻址方式)之间的数据传送。
MOV AL,BUFFER
MOV AX,[SI]
MOV [DI],CX
MOV SI,BLOCK[BP]
MOV DS,DATA[SI+BX]
MOV DEST[BP+DI],ES
⑷ 能实现用立即数给存储单元赋值
例如:MOV [2000H],25H
MOV [SI],35H
对于 MOV 指令应注意几个问题:
①存储器传送指令中,不允许对 CS 和 IP 进行操作;
②两个操作数中,除立即寻址之外必须有一个为寄存器寻址方式,即两个存储器
操作数之间不允许直接进行信息传送;
如我们需要把地址(即段内的地址偏移量)为 AREAl 的存储单元的内容,传送
至同一段内的地址为 AREA2 的存储单元中去,MOV 指令不能直接完成这样的传送,
但我们可以用 CPU 内部寄存器为桥梁来完成这样的传送:
MOV AL,AREAl
6