微机原理与接口技术3-3操作数寻址方式.pptVIP

微机原理与接口技术3-3操作数寻址方式.ppt

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
微机原理与接口技术3-3操作数寻址方式

3.4 8086的指令系统 数据传送指令 算术运算指令 逻辑运算指令 移位指令 串操作指令 控制转移指令 一 数据传送指令 通用传送指令 累加器专用传送指令 地址传送指令 标志传送指令 1 通用传送指令 最基本的传送指令(MOV) 堆栈指令(PUSH,POP) 数据交换指令(XCHG) 1.1 通用传送指令——MOV指令 指令格式:MOV DST, SRC; 操作:DST SRC 例: MOV CL,05H MOV [BX], 2008H MOV SI,BP MOV DS,AX MOV BX,ES MOV DS,[SI+BX] MOV [BP],ES MOV AX,[2008H] MOV [1234H],BX 使用MOV指令应注意 立即数只能作源操作数,不能作目的操作数; CS只能作源操作数,不能作目的操作数; 源操作数和目的操作数必须等长; CPU中的寄存器除IP外都可通过MOV指令访问。 1.两存储器单元之间不能直接传送数据 2.两段寄存器之间不能直接传送数据 3.当DS、ES、SS作目的操作数时,源操作数不能为立即数 几种不允许传送的解决办法: 用寄存器如AX作桥梁。 存储器←存储器: MOV AX,MEM1 MOV MEM2,AX 段寄存器←段寄存器:MOV AX,DS MOV ES,AX 段寄存器←立即数: MOV AX,DATA MOV DS,AX 使用MOV指令应注意 MOV 10H,AL DST不能为立即数寻址 MOV AL,CX 类型不一致 MOV CS,AX CS不能做DST MOV DS,0100H DS作DST时,SRC不能为立即数 举 例 1.2 通用传送指令——数据交换指令 格式:XCHG DST,SRC 功能:交换两操作数的内容。 要求:两操作数中必须有一个在寄存器中; 操作数不能为段寄存器和立即数; 源和目地操作数类型要一致。 举例: XCHG AX,BX; AX与BX之间进行字交换 XCHG [2000],CX;CX的内容与2000、2001两个单元的内容交换 XCHG AH,BL 1.3 通用传送指令——堆栈操作指令 什么是堆栈? 按“后进先出(LIFO)”方式工作的存储区域。堆栈以字为单位进行压入/弹出操作。 主程序调子程序 主程序 IP 继续执行 主程序 执行子程序 转子程序 入栈 出栈 返回主程序 IP(下) 由SS指示堆栈段的段基址; 堆栈指针SP始终指向堆栈的顶部; SP的初值规定了所用堆栈区的大小; 堆栈的最高地址叫栈底。 SP SS 堆栈段 进栈方向 退栈方向 栈底 栈顶 1.3 通用传送指令——堆栈操作指令 ① 入栈指令格式: PUSH SRC: 功能: 先修改指针: SP←SP-2 后压入:(SP+1,SP)←SRC ② 弹出指令 POP DST 功能: 先弹出: DST←(SP+1,SP) 后修改指针:SP←SP+2 堆栈指令使用时应注意几点: ① 堆栈操作总是按字进行; ② 不能从栈顶弹出一个字给CS;; ③ 不能使用立即数方式; ④堆栈指针为SS:SP,SP永远指向栈顶。 1.3 通用传送指令——堆栈操作指令 PUSH AX 指令执行示意图 低地址 存储区 (SS段) PUSH前 (AX)=1020H (SP)-2 (SP) 高地址 (SP)-1 存储区 (SS段) 进栈方向 PUSH后 低地址 高地址 10 (AH) 20 (AL) 设(AX)=1020H (SP) POP BX 的执行示意图 低地址 存储区 (SS段) POP前 20 10 (SP) (SP)+1 (SP)+2 高地址 BX 20 10 出栈方向 存储区 (SS段) POP后 (BX)=1020H 低地址 高地址 (SP) 2 累加器专用传送指令 IN:输入指令 OUT:输出指令 通用传送指令 累加器专用传送指令 地址传送指令 标志传送指令 一 数据传送指令 2.1 累加器专用指令——IN指令 格式: IN AL, PORT ;AL ← (PORT) IN AX, PORT ;AX ← (PORT+1,PORT) IN AL, DL ;AL ←(DL) I

文档评论(0)

jiayou10 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

版权声明书
用户编号:8133070117000003

1亿VIP精品文档

相关文档