微机原理和接口技术第3章_1 寻址方式.ppt

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

第3章 指令系统和寻址方式; 1、指令、指令系统和程序 指令是CPU能执行的一个基本操作。 如:取数、加、减、乘、除、存数等 指令系统是CPU所能执行的全部操作,即全部指令的集合。 不同的CPU,其指令系统不同。 程序是用户在使用计算机时,针对要解决的问题, 用一条条指令编写的指令的序列。; *一个CPU能执行什么操作,是工程人员设计和制造好的,是固定的,用户不能改变。 构成程序的指令在存储器中一般都是顺序存放,要破坏这种顺序性,必须由转移指令操作。 ;3、指令的一般格式: 操作码字段: 在机器里只需对某种操作指定确定的二进制代码。 通常用指令的第一个字节表示,不够可以占第二个字节中的3位。 操作数字段: 操作数字段可以有一个,二个或三个。 例: INC CX ADD AX , BX;4、操作数的存放 操作数的存放不外乎三种情况: (1) 操作数包含在指令中 即指令的操作数字段包含操作数本身。这种操作数为立即数。——数在指令队列中,执行数度较快。 例:MOV AL , 08H (2)操作数包含在CPU的一个内部寄存器中 例:INC CX 指令中的操作数字段是CPU内部寄存器的一个编码。这种寻址方式称为寄存器寻址。——数在寄存器中,无需BIU去取,执行速度最快。;(3)操作数在内存数据区 操作数在内存数据区,操作数字段包含着此操作数地址。——存储容量大 在8086中,任何内存地址是由两部分组成: 段的基地址:存储单元所在段的基地址 (大部分情况是数据段寄存器DS中); 段内偏移量:此单元与段基地址的距离。 有效地址EA(Effective Address) : 段内偏移量为适应各种数据结构的需要,可以有几个部分组成,所以也把它称为有效地址EA。 ;3.2 8088/8086CPU的寻址方式;3.2.1 立即寻址方式(Immediate addressing);例: MOV AL,05H 指令执行后: (AL)=05H;3.2.2 寄存器寻址方式( Register addressing );例: 指令执行前:(AX)=3064H (SS)=1234H MOV SS,AX 指令执行后: (SS)=3064H (AX)保持不变。 ;3.2.3 存储器寻址方式(Memory addressing) 1、直???寻址(Direct addressing);例:MOV AX,[3100H] (DS)=6000H , (63100H)=3050H 则:(AX)=3050H 例:用符号地址代替数值地址。 MOV AX,VALUE 或 MOV AX,[VALUE] VALUE——变量名,代表有效操作数单元的符号地址。 如VALUE在附加段中,则应指定段超越。 MOV AX,ES:VALUE 或MOV AX,ES:[VALUE];例: 假设TABLE是在数据段定义的一个字节数组的首地址标号(变量名),其偏移地址为1000H,则指令 MOV AL, TABLE MOV AL, [TABLE] MOV AL, [1000H] 是等效的。 指令 MOV AL, TABLE+2 MOV AL, [TABLE+2 ] MOV AL, [1000H+2] 也是等效的,都是直接寻址方式。;(1)直接寻址方式适用于处理单个变量。 (2)直接寻址方式隐含的段寄存器是 DS, 8086/8088允许段超越,即允许使用 CS 、SS 、ES作为段寄存器,这时必须在指令中特别标明。 ?(3)IBM PC机中规定双操作数指令必须有一个操作数使用寄存器方式,这就是常常先要把一个变量送到寄存器中的原因。 ; 操作数在存储器中,操作数地址的16位偏移量(有效地址EA)包含在:BP、BX、SI、DI寄存器中。 1)、若选择SI、DI、BX作为间接寻址 操作数一般在现行数据段区域中,用(DS)作为段地址。 即操作数物理地址为: 物理地址PA=16 d ×(DS)+(BX) 物理地址PA=16 d × (DS)+(SI) 物理地址PA=16 d × (DS)+(DI); 例:MOV BX,[DI] (DS)=6000H (DI)=2000H PA=62000H (62000H)=50A0H (BX)=50A0H;

文档评论(0)

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

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

版权声明书
用户编号:6111134150000003

1亿VIP精品文档

相关文档