11.数据传送指令MOV、XCHG效果

80386的数据传送指令是为了实现CPU和内存、输入/输出端口之间的数据传送。


(1)MOV:称为数值传送指令,格式是“MOV DST,SRC”。


(2)MOV指令将源操作数SRC传送到目的操作数DST中。


(3)传送的数据格式可以是8字节、16字节和32字节。


 示例代码:
MOV EAX,56  //将56H立即数传送到EAX寄存器
MOV ESI,DWROD PTR [EAX*2+1] //将内存地址为EAX*2+1处的4字节数据传送到ESI寄存器。
MOV AH,BYTE PTR [ESI*2+EAX]  //将内存地址为ESI*2+EAX处的8位数据传送到AH寄存器。
MOV DWORD PTR [ESP+36],EBX  //将EBX寄存器的值以4字节传送到堆栈地址为ESP+36所指向的地方。

(4)XCHG:称为交换指令,XCHG实现寄存器间和内存间的数据交换。
格式是“XCHG DST,SRC”。XCHG指令交换SRC和DST之间的数据,

交换的数据可以是8字节、16字节和32字节,其中SRC和DST必须格式相同。


示例代码:
XCHG EAX,EDX   //将EDX寄存器的值和EAX寄存器的值交换
XCHG [ESP-55],EDI //将EDI寄存器的值和堆栈地址为[esp-55]处的值交换。
XCHG BH,BL      //将BL寄存器和BH寄存器的值交换。


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值