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

[IT认证]第3章_80X86的指令系统和寻址方式.ppt

  1. 1、本文档共208页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
[IT认证]第3章_80X86的指令系统和寻址方式

第3章 80X86的指令系统和寻址方式 主要内容:80X86的数据类型、寻址方式、指令格式、指令系统具体组成(数据传送指令、算术运算指令、逻辑运算指令、串操作数指令、控制转移指令、处理机指令)。 要求掌握:8086基本指令系统,可以进行基本的应用。 3.1 概述 指令——控制计算机完成指定操作的命令 机器指令——指令的二进制代码形式。 例如:CD21H 汇编指令——助记符形式的指令。 例如:INT 21H 指令系统——CPU所有指令及其使用规则的集合 寻址方式——找出存放操作数的有效地址的方式 寻址操作——按寻址方式求出操作数有效地址和存取操 作数的过程 指令系统:指该计算机能够执行的全部指令 的集合 汇编语言指令要解决的两个问题: 要指出进行什么操作——操作符; 要指出操作数和操作结果放在何处——寻址方式。 指令的基本构成: 操作数的种类 操作数的种类分为两大类:数据操作数和转移地址操作数 数据操作数—对象是数据,分为: 1、立即数操作数 2、寄存器操作数 3、存储器操作数 4、I/O操作数 转移地址操作数—对象是目标地址,分为: 1、立即数操作数 2、寄存器操作数 3、存储器操作数 数据类型 无符号二进制数 带符号二进制数 浮点数 BCD码 串数据 ASCII码数据 指针类数据 位串:一串连续的二进制数 - 字节串:一串连续的字节。 - 字串:一串连续的字。 双字串:一串连续的双字。 3.2 80X86的寻址方式 数据寻址方式:是指获取指令所需的操作数或操作数地址的方式 程序寻址方式:是指程序中出现转移和调用时的程序定位方式 3.2.1 80X86的数据寻址方式 (共十种) 1、立即寻址方式 操作数作为指令的一部分,在直接指令中给出。 例:? ? MOV AL,5 ? ?? ???MOV AX,1234H ? ?? ???MOV EAX ?? 立即数寻址时,只允许源操作数为立即数,目标操作数必须是寄存器或存储器,其作用是给寄存器或存储单元赋值。 2、寄存器寻址方式(速度快) 操作数在某个寄存器中,指令中指出寄存器号。 例:? ? MOV AL,BH ? ?? ??? MOV AX,CX ? ?? ?? ?MOV EAX,EBP 以下各种寻址方式的操作数都放在存储器中,通过不同的寻址方式求得操作数的地址,从而取得操作数。 操作数的地址由段地址及偏移地址确定。在80x86中,把操作数的偏移地址称为有效地址(Effective Address,简称EA)。 80X86任何内存单元的地址由段基址和偏移地址组成 段基址由段寄存器提供 而偏移地址由以下四个基本部分组合而成。 基址寄存器; 变址(间址)寄存器; 位移量。 它们的组合和计算方法为: 有效地址EA=基址+变址+位移量 几点说明 有效地址可有以下四种成分组成: ?(1)位移量:是存放在指令中的一个8位、16位或32位的数。 ?(2)基址:其值存放在基址寄存器中。 BX、BP、其它通用寄存器 ?(3)变址:其值存放在变址寄存器中。SI、DI 3、直接寻址方式 有效地址只包含偏移地址(直接地址)一种成分。 例:? ? MOV AX,[2000H] ;将有效地址EA=2000H字单元中的内容传送到AX寄存器。 在汇编语言中,带方括号“[ ]”的操作数表示存储器操作数,括号中的内容作为存储单元的有效地址EA 上例的寻址及执行过程 上例的寻址及执行过程 4、寄存器间接寻址方式 有效地址存放在SI, DI, BX, BP中。 例:? MOV AX,[BX] ? ?? ???MOV AX,[BP] ? ?? ???MOV AX,[SI] ? ?? ???MOV AX,[DI]    如果指令中指定的寄存器是BX, SI, DI,则操作数在数据段中,段基址在DS中,操作数的物理地址为:   如果指令中指定的寄存器是BP,则操作数在堆栈中,段基址在SS中,操作数的物理地址为:   物理地址=(SS)×16+(BP) 例 MOV AX, [BP]     设SS=3000H,BP=1000H 则 AX=? 过程如下 5、寄存器相对寻址方式 有效地址为基址寄存器或变址寄存器的内容与位移量之和。 例:? MOV AX,[BX+2] ? ?? ???MOV AX,[BP+1] ? ?? ???MOV AX,[SI-1] ? ?? ???MOV AX,[DI-2] ? ?? ???MOV A

文档评论(0)

qiwqpu54 + 关注
实名认证
内容提供者

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

1亿VIP精品文档

相关文档