南邮 微机 第三章 (3)

已知数据段

FIRST DB 12H 34H

SECOND DB 56H 78H

(1)传送实现FIRST和SECOND 互换,FIRST+1和SECOND+1互换

分析,即使得SECOND16位内容整体和FIRST16位内容进行互换,

首先双操作数,MOV 和XCHG 不可以是双内存操作数,或者立即数

需要一个通用寄存器来存放长度为16位的内存操作数,选择AX或BX等

a.MOV AX, WORD PTR FIRST  ;以16位读取的方式读取FIRST

 MOV BX,WORD PTR SECOND 

MOV WORD PTR FIRST, BX    BX放入以16位为一个存放单位的FIRST

MOV WORD PTR SECOND,AX

b.(使用XCHG)

MOV AX, WORD PTR FIRST  ;以16位读取的方式读取FIRST

XCHG AX,WORD PTR SECOND 

MOV WORD PTR SECOND,AX

c.(也可以一位一位放)

(2)堆栈段实现

PUSH WORD PTR FIRST

PUSH WORD PTR SECOND

POP WORD PTR FIRST

POP WORD PTR SECOND

push和pop就是先放后读,后放先读

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值