网站大量收购闲置独家精品文档,联系QQ:2885784924

微机原理课件第4讲.ppt

  1. 1、本文档共41页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第3章 8086的寻址方式和指令系统 3.1 8086寻址方式 8086指令特点 8086具有灵活的指令格式 8086有较强的运算指令 8086指令有极强的寻址能力 8086指令有处理多种数据能力 指令格式 操作码 操作数地址 操作结果的存储地址 下一条指令的地址 指令格式 指令格式 寻址方式 寻址方式就是指令中用于说明操作数所在地址的方法。 MOV AX, 1234H; B8 34 12 MOV AX, [1234H]; A1 34 12 8086的寻址方式说明 有效地址EA(Effective Address) 当操作数在内存中时,指令的地址码(操作码)给出所访问的内存单元的逻辑地址。在寻址方式中,逻辑地址的形成是由多个分量组合而成,该组合地址又叫有效地址。 8086的寻址方式说明 MOV数据传送指令 其格式为: MOV 目的操作数,源操作数 目的操作数和源操作数均可采用不同的寻址方式; 两个操作数的类型必须一致。 寻址方式介绍 立即寻址方式 寄存器寻址方式 直接寻址方式 寄存器间接寻址方式 寄存器相对寻址方式 基址变址寻址方式 相对基址变址寻址方式 其它 ①立即寻址 立即寻址(Immediate addressing) 含义 操作数就在指令中,紧跟在操作码后面,作为指令一部分存放在内存的代码段中,这种操作数称为立即数,这种寻址方式叫立即寻址。 例: MOV BL , 20H; B3 20 MOV AX , 34EAH; B8 EA 34 ②寄存器寻址 寄存器寻址(Register addressing) 含义 操作数包含在寄存器中,寄存器的名称由指令指定。 例: MOV AL , BL ; 88 D8 MOV AX , 1234H; B8 34 12 MOV AL , AH; 88 E0 ②寄存器寻址 ③直接寻址 ③直接寻址 ③直接寻址 ④寄存器间接寻址 ④寄存器间接寻址 ⑤寄存器相对寻址 ⑤寄存器相对寻址 ⑥基址变址寻址 ⑦相对基址变址寻址 ⑧其他寻址方式 隐含寻址 在指令中没有明显的标出,而指定寄存器参加操作,称之为“隐含寻址”。 DAA;对寄存器AL中的数据进行十进制数调整,结果仍保留在AL中。 MUL BL ⑧其他寻址方式 串寻址(String addressing) 串寻址方式仅在8086的串指令中使用。规定源操作数的逻辑地址为DS:SI;目的操作数的逻辑地址为ES:DI。当执行串指令的重复操作时,根据设定的方向标志DF,SI和DI会自动调整。 ⑧其他寻址方式 I/O端口寻址(I/O port addressing) 当操作数在外部设备时,使用I/O指令。此时有两种不同的寻址方式访问I/O端口。 (1) 直接端口寻址方式。 IN AL , 25H (2) 采用DX寄存器间接寻址方式 MOV DX , 3E4H OUT DX , AL 3.2 8086的指令格式及数据类型 指令由操作码和操作数(地址码)组成。8086的指令长度是可变的,一条指令一般由1-6个字节组成。 可以根据地址码A的个数对指令进行分类。 指令中的操作数 单操作数指令 顾名思义,指令中只有一个操作码和一个地址码。 指令中给出的一个地址既是操作数的地址,又是操作结果 的存储地址。如加1、减1、移位等单操作数指令。 操作形式:OP(A)→A 指令中的操作数 双操作数指令 指令中包含一个操作码和两个地址码。 指令中的操作数 三操作数指令 8086指令系统中,大多数指令中只有1-2个操作数,但也有少数指令中有3个操作数,不过有一操作数隐含在操作码中。 例: ADC AX , BX 该指令完成操作数AX、BX和CF位相加,结果送回AX。 小结 8086的指令格式 8086的各种寻址方式(重点掌握) 本节作业 寄存器的特殊用途和隐含性质 √ 在字乘法/除法指令中存放乘积高位或被除数高位或余数 DX × 在移位/循环移位指令中作移位次数计数器用 CL × 在间接寻址的输入输出指令中作地址寄存器用 √ 在串操作指令和LOOP指令中作计数器用 CX √ 在XLAT指令中作基址寄存器用 × 在间接寻址中作基址寄存器用 BX √ 在XLAT指令中作累加器用 √ 在十进制运算指令中作累加器用 AL √ 在LAHF指令中,

文档评论(0)

好文精选 + 关注
实名认证
内容提供者

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

1亿VIP精品文档

相关文档