微机原理与接口技术 教学课件 作者 周鹏 第4章 微机指令系统.ppt

微机原理与接口技术 教学课件 作者 周鹏 第4章 微机指令系统.ppt

  1. 1、本文档共30页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
* * 第4章 微机指令系统 4.1 寻址方式 4.1.1 指令格式及操作数类型 1.指令格式 一般汇编指令格式如下: 指令助记符 [操作数1 [,操作数2]][;注释] 2.操作数类型 8086/8088系统中的操作数可以分为: (1).立即数操作数 (2).寄存器操作数 (3).存储器操作数 4.1.2 8086/8088的寻址方式 1.立即寻址 当需要的操作数为常数时,操作数可以在指令中直接给出, 开始 这种寻址方式称为立即寻址方式。 2.寄存器寻址 当指令所需要的操作数在寄存器中时,在指令中指出需访问的寄存器名字即可,这种寻址方式称为寄存器寻址。 其寻址方式如下图所示。 3.直接寻址 在这种寻址方式中,操作数在内存 单元中,并且在指令中直接给出这一 单元的逻辑地址。 4.寄存器间接寻址 图4-1 寄存器寻址 在这种寻址方式中,操作数在内存 单元中,并且在指令中按如下方式给出这一单元的逻辑地址: 段基址:段基址的给出同直接寻址。 偏称量:以寄存器SI、DI、BP、BX之一的内容作为偏称量。 5.变址寻址 变址寻址基本上同寄存器间接寻址,只是逻辑地址中偏移量的给出方式不同: 偏移量表达式由寄存器BX、BP、SI、DI之一和一常数共同构成。以这二者之和作为被寻址内存单元的偏移量。 6.基址加变址寻址 基址加变址寻址中,操作数在内存中,且按以下方式给出其逻辑地址: 段基址:段基址的给出仍同直接寻址。 偏移量:由“一个常数”+“BX、BP之一的内容”+“SI、DI之 一的内容”三者之和作为偏移量。 4.2 8086/8088指令系统 4.2.1 数据传送指令 1.通用数据传送指令MOV 格式:MOV OPD,OPS 功能:OPD是目的操作数,OPS是源操作数,该指令的功能是 将源操作数送至目的操作数中,即OPS→OPD。 允许的操作数组合: OPS可为:立即数、通用寄存器、存储器、段寄存器。 OPD可为:通用寄存器、存储器、段寄存器 OPS和OPD可以有9种组合,如下图所示: (1)通用寄存器到通用寄存器 如:MOV AX,BX ; (2)立即数到通用寄存器 如:MOV AX,03H ; (3)立即数到存储单元 如:MOV BYTE PTR [2000H],12H (4)存储单元到通用寄存器 如:MOV AX,[2000H] ; (5)通用寄存器到存储单元 如:MOV [2000H],AX ; 图4-2 MOV指令传送示意图 (6)通用寄存器到除CS外的段寄存器 如:MOV DS,AX ;。 (7)段寄存器到通用寄存器 如:MOV AX,DS ; (8)存储器到除CS外的段寄存器 如:MOV ES,[2000H] ; (9)段寄存器到存储器 如:MOV [2000H],DS ; 2.堆栈及堆栈操作指令 (1).堆栈的概念 堆栈是内存的一个逻辑段,当这个段被指定为堆栈后,可用堆栈操作指令对它进行特殊规则的访问,这个规则就是: 不论入栈还是出栈,都只能从栈顶处进行,堆栈内数据遵循先进后出,后进先出的原则。 (2).堆栈的设置 8086/8088中专门有2个寄存器用于堆栈操作:堆栈段寄存器SS和堆栈指针寄存器SP。 SS用来存放堆栈段的段基址,SP用于指示堆栈的顶部单元的段内偏移量,开始时堆栈内没有数据,栈顶就是栈底,故开始时要将栈底单元的偏移量赋给它,以指明栈低位置。 (3).堆栈操作指令 ⊙入栈指令PUSH 格式:PUSH OPS 功能:将操作数OPS的内容压入堆栈中。 允许的操作数:OPS可以是通用寄存器,段寄存器或存储 器,必须为字操作数。 操作过程:①SP←SP-1,OPS的高字节→栈顶单元; ②再次SP←SP-1,OPS的低字节→栈顶单元。 例如:PUSH AX 执行前:AX=1234H,SP=2000H。堆栈情况如图4-5(a), 执行后:(1FFEH)=1B5DH,AX的内容不变。堆栈情况如图4 -5(b)所示(图4-3见下页)。 ⊙出栈指令POP 格式:POP OPS 功能:将堆栈栈顶内容弹出到操作数OPS中。 允许的操作数组合:OPS可以是通用寄存器,段寄存器 (CS除外)或存储器,必须为字操作数。 操作过程:①OPS的低字节←栈顶单元,SP←S

您可能关注的文档

文档评论(0)

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

1亿VIP精品文档

相关文档