微机原理第3章节-1.pptVIP

  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章节-1

二、存储器寻址方式  程序运行时用到的数据决大部分存放在内存中,如何寻找内存中的数据就是存储器寻址方式。共5种。 直接寻址:在指令中直接给出操作数所在单元的偏移地址,具体有两种形式。 (1) MOV AX,[2050H] ;AX←[DS×16+2050H] 偏移地址通常以变量的形式出现,在指令中就直接写变量的名字 ,如ADDR、VAR (2) MOV SI , ADDR  ; ADDR为一变量 默认的段寄存器为DS,但也可以显式地指定其他段寄存器。 称为段超越前缀 MOV DX,ES:[2050H];使用段超越;DX←[ES×16+2050H] 2、寄存器间接寻址 操作数的偏移地址放在寄存器中,只有SI、DI、BX和BP可作间址寄存器    MOV AX,[BX];AX←[DS×16+BX]    MOV AL,[BX];AL←[DS×16+BX]    MOV AX,[SI];SI←[DS×16+SI]    MOV AX,[DI];AX←[DS×16+DI]    MOV AX,[BP];AX←[SS×16+BP]    MOV AX,ES:[BX];AX←[ES×16+BX]    MOV AX,DS:[BP];AX←[DS×16+BP] 小结 说明: ① 在直接寻址中,地址可以用符号代替,如 “MOV AX,BUF”,相当于“MOV AX,[xxxxH]”, “BUF”称为变量或符号地址,后面介绍。 ②偏移量可以是变量或符号数,也在后面介绍。 ③如果一条指令有两个操作数,源操作数和目的操作数的寻址方式可能相同,也可能不同,如指令 “MOV AX,[BX]”,源操作数为寄存器间接寻址,目的操作数为寄存器寻址。 寄存器间接、寄存器相对、基址+变址、相对基址变址四种寻址方式的比较: 寻址方式 指令操作数形式 寄存器间接 —— 只有一个寄存器(BX/BP/SI/DI之一) 寄存器相对 —— 一个寄存器加上位移量 基址+变址 —— 两个不同类别的寄存器 相对基址+变址 —— 两个不同类别的寄存器加上位移量 * 第3章 80x86寻址方式和指令系统 3.1 指令格式 3.2 寻址方式 3.3 调试工具DEBUG 3.4 8086 CPU指令系统 3.5 高档微处理器指令简介 3.1 指令格式 一、基本概念 指令:是计算机能够识别和执行的操作命令,每条指令都明确规定了计算机必须完成的一套操作以及对哪一组操作数进行操作计算机通过执行程序来完成指定的任务,而程序是由完成一个完整任务的一系列有序指令组成的。 每种计算机都有一套能反映计算机全部功能的指令,称为计算机的指令系统,不同系列的微处理器,有不同的指令系统。指令系统是计算机硬件和软件之间的桥梁,是汇编语言程序设计的基础。 3.1 指令格式 二、指令格式 说明要执行的是什么操作 操作对象,可以有0个、1个或2个 目的 源 [标号:]  操作码 操作数 [;注释] 标号是一条指令语句的符号地址,汇编源程序中,只有在需要转向一条指令语句时,才为该指令语句设置标号 注释是对有关指令及程序功能的标注性说明,以增加程序的可读性 指令举例: ADD AX,[SI+6] MOV AX , BX 操作码 操作数 INC [BX] HLT 3.1 指令格式 3.1 指令格式 三、操作数类型 1、立即数(常数) 指具有固定数值的操作数(即常数),它具体可以是一个字节、字或双字 取值范围如下表: 8000H-7FFFH(-32768~32767) 80H-7FH(-128~127) 带符号数 0000H-FFFFH(0-65535) 00H-FFH(0-255) 无符号数 16位 8位 2、寄存器操作数 放在8个通用寄存器或4个段寄存器中的操作数 AX BX CX DX SI DI BP SP 只能 存放 字操 作数 既能存放字操 作数又能存放字节 段寄存器存 放当前操作 数的段基地址 CS DS ES SS 3.1 指令格式 3、存储器操作数 存储器操作数 字节 字 双字 1 2 4 类型 存储单元个数 注意:大部分指令不允许两个操作数同时为存储器操作数 存储器操作数:存放在存储单元中的操作数 若指令中没有指明所涉及的段寄存器,CPU就采用默认的段寄存器来确定操作数所在的段。 存储器操作数的偏移地址可通过不同的寻址方式由指令给出。 说明: 3.1 指令格式 解释: 存储器操作数的表示 (1)若M表示为某内存单元的物理地址,则有“(M)”表示M单元的内容;若地址为“M”的内存单元中存放内容是 “ N”,则有:

文档评论(0)

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

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

1亿VIP精品文档

相关文档