第5章51寻址方式_第1页
第5章51寻址方式_第2页
第5章51寻址方式_第3页
第5章51寻址方式_第4页
第5章51寻址方式_第5页
已阅读5页,还剩26页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、教学重点第第5 5章是本课程的一个关键内容,是程序设计的基础章是本课程的一个关键内容,是程序设计的基础基础是掌握寄存器组难点是各种寻址方式重点是掌握8086常用指令的功能及应用什么是指令系统n指令系统就是CPU所能执行的各种不同类型的指令总和,也就是这台计算机所能执行的全部操作 n每种计算机都有它支持的指令集合 n16位8086/8088指令系统是Intel 80 x86系列微处理器指令系统的基础5.1.1 指令格式指令格式n指令由操作码字段和操作数字段两部分组成n操作码说明计算机要执行哪种操作,如传送、运算、移位、跳转等操作,它是指令中不可缺少不可缺少的组成部的组成部分分n操作数是指令执行的

2、参与者,即各种操作的对象n有些指令不需要操作数,通常的指令都有一个或两个操作数。操作码操作码操作数操作数;注释;注释指令的操作码和操作数n每种指令的操作码:q用一个唯一的助记符表示(指令功能的英文缩写)q对应着机器指令的一个二进制编码n指令中的操作数:q立即数q寄存器操作数q内存操作数 5.1.1 指令格式指令格式操作码 操作数1,操作数2;注释n操作数2,称为源操作数,它表示参与指令操作的一个对象n操作数1,称为目的操作数,它不仅可以作为指令操作的一个对象,还可以用来存放指令操作的结果n分号后的内容是对指令的解释5.1.1 指令格式指令格式示例:MOVBX, AX源操作数源操作数目的操作数目

3、的操作数BXAX被传送的数据被传送的数据5.1.2 寻址方式n指令系统设计了多种操作数的来源n寻找操作数的过程就是操作数的寻址n操作数的三种不同表现形式:立即数、寄存器操作数和内存操作数 。n寻址方式也可以分为三大类:n立即数寻址n寄存器寻址n存储器寻址 1、立即数寻址n操作数是以立即数的形式出现。操作数直接包含在指令中,它紧跟在操作码之后,作为指令的一部分存放在代码段里。n这种操作数被称为立即数immq它可以是8位数值i8(00HFFH)q也可以是16位数值i16(0000HFFFFH)n立即数寻址方式常用来给寄存器赋值一、立即数寻址n【例5.1】nMOV CL,100n;将十进制数100(

4、64H)传送到CL中nMOVAX,1200Hn;将12H和00H分别传送到AX的高字节和低字节nMOVAL,An;将字母A的ASCII码41H传送到AL注意:注意:立即数只能作为源操作数,不能作为目立即数只能作为源操作数,不能作为目的操作数。的操作数。二、寄存器寻址n操作数存放在CPU的内部寄存器reg中,寄存器名由指令给出,可以是:q8位寄存器r8:AH、AL、BH、BL、CH、CL、DH、DLq16位寄存器r16:AX、BX、CX、DX、SI、DI、BP、SPq4个段寄存器sreg:CS、DS、SS、ESl操作数存放在CPU内部,不需要通过总线操作访问存储器,所以指令执行的速度也较快。 二

5、、寄存器寻址n【例5.2】nMOVBL,12H ;BL=12H,源操作数为立即数寻址,目的操作数为寄存器寻址nMOVAH,BL ;AH=12H,源操作数和目的操作数均为寄存器寻址注意:注意: 源操作数与目的操作数应该位数相同。源操作数与目的操作数应该位数相同。三、存储器寻址n存储器寻址方式下,操作数存放在CPU外部的存储器中。寻找存储器中的操作数,首先要获得该存储单元的物理地址 n物理地址物理地址= =段地址段地址16+16+偏移地址(有效地址偏移地址(有效地址EAEA)n段地址通常在默认的段寄存器中(使用段超越前缀除外) 。n偏移地址(有效地址EA)在操作数字段。求取EA是关键n有效地址EA

6、可以用寄存器的值或位移量来表示。n微处理器内部有4个可以存放地址信息的寄存器。 BX和和BP(基址寄存器), SI和和DI(变址寄存器)n位移量的范围: -32768(8000H)+32767(7FFFH) 。三、存储器寻址n根据操作数字段EA的不同表示方法,存储器寻址方式可以分为5类: 1、直接寻址2、寄存器间接寻址3、基址变址寻址4、寄存器相对寻址5、相对基址加变址寻址三、存储器寻址直接寻址直接寻址寄存器间接寄存器间接寻址寻址基址加变址基址加变址寻址寻址寄存器相对寄存器相对寻址寻址相对基址加变相对基址加变址寻址址寻址i8/i16BXBX+SIBX+i8/i16BX+SI+i8/i16BPB

7、X+DIBP+i8/i16BX+DI+i8/i16SIBP+SISI+i8/i16BP+SI+i8/i16DIBP+DIDI+i8/i16BP+DI+i8/i16注:注:i8/i16为为8位位/16位的位移量。位的位移量。 为寻址内存操作数。为寻址内存操作数。表5.1 存储器寻址1、直接寻址nEA在操作数字段直接给出在操作数字段直接给出 nEA=i8/i16n物理地址物理地址=DS16+EA (默认的段地址在DS段寄存器,可使用段超越前缀改变)【例5.3】n已知DS=1000H,内存中11200H和11201H单元的内容分别为34H和12H。执行指令MOV AX,1200H,问源操作数的寻址方

8、式及指令执行后AX寄存器的值。n解:直接寻址。 EA=1200H,DS=1000H 物理地址= DS16+EA=11200H。 故将11200H和11201H单元的数据分别送AL和AH,AX=1234H。【例5.4】VALUEDW 1234H ;设VALUE的偏移地址为1200HMOVAX, VALUEMOVAX, VALUEMOVAX, 1200H说明:指令执行完AX=1234H 3条MOV指令等价,源操作数均为存储器寻址中的直接寻址 【例5.5】CONSTEQU 5;将5定义为常量CONSTMOVBX, CONST;将0005H传送到BX说明:在这条MOV指令中,源操作数是一个定义好的常量

9、名,该操作数的寻址方式为立即数寻址。2、寄存器间接寻址nEA保存在寄存器中 :n(1)当EA保存在BX、SI或DI中时,数据默认存放在数据段DS中。可使用段超越前缀改变。 EA=BX/SI/DI 物理地址物理地址=DS16+EAn(2) 当EA保存在BP中,数据默认存放在堆栈段SS中。 EA=BP 物理地址物理地址=SS16+EA【例5.6】n已知SS=1000H,BP=1200H,内存中11200H和11201H单元的内容分别为34H和12H。执行指令MOV AX, SI,问源操作数的寻址方式,指令执行后AX寄存器的值。n解:寄存器间接寻址。 EA=BP=1200H,SS=1000H 物理地

10、址= SS16+EA=11200H。 故将11200H和11201H单元的数据分别送AL和AH,AX=1234H。3、基址加变址寻址n有效地址由基址寄存器(BX或BP)的内容加上变址寄存器(SI或DI)的内容构成。n段地址对应BX基址寄存器默认是DS。EA=BX+SI/DI 物理地址= DS16+EA n段地址对应BP基址寄存器默认是SS。 EA=BP+SI/DI 物理地址=SS16+EA【例5.7】MOV AX,BX+SI;AXDS:BX+SIMOV AX,BP+SI;AXSS:BP+DIMOV AX,ES:BP+DI;AXES:BP+DI4、寄存器相对寻址nEA为寄存器的值与位移量的和为寄

11、存器的值与位移量的和 n段地址对应BX/SI/DI寄存器默认是DS,对应BP寄存器默认是SS;n可用段超越前缀改变。nEA=BX/BP/SI/DI+ i8/i16n物理地址物理地址= DS16+EA n物理地址物理地址= SS16+EA (使用基址寄存器(使用基址寄存器BP) 【例5.8】nMOVAX,SI+2;默认数据段nMOVAX,DI-2 ;默认数据段nMOVAX,BP+FFFFH;默认堆栈段nMOVAX,SI+VALUE ;默认数据段, VALUE为变量nMOVAX,VALUESI;默认数据段n说明:说明:位移量可为正,也可为负。n 位移量可以用变量名表示,其值是变量的偏移地址。位移量

12、可以写在 内,也可以写在 前面。5、相对基址加变址寻址n有效地址是基址寄存器(BX/BP)、变址寄存器(SI/DI)与一个8位或16位位移量之和。n段地址对应BX基址寄存器默认是DS,对应BP基址寄存器默认是SS;可用段超越前缀改变。nEA=BX/BP+SI/DI+ i8/i16n物理地址物理地址= DS16+EAn物理地址物理地址= SS16+EA (使用基址寄存器使用基址寄存器BP时时)【例5.9】MOV AX,BX+SI+10HMOV AX,10HBXSI;AXDS:BX+SI+10H存储器寻址总结nEA=BX/BP+SI/DI+16/8位偏移量 (1) (2) (3)nEA中只要出现BP,其约定段为SS;不出现BP,约定段为DS,段超越除外;n书写格式:MOV AX, 5BXSI BX+SI+5 5BX+SIn段超越前缀 格式: MOV AL, CS:2000H CS: MOV AL, 2000H寻址方式课堂练习n说明下列指令中源操作数的寻址方式?如果BX=2000H,DI=40H,给出DX的值或有效地址EA的值。(1)mov dx,1234h(2)mov dx,1234h(3)mov dx,bx(4)mov dx,bx(5)mov dx,bx+1234h(6)mov dx,bx+di(7)mov dx,bx+di+1234h参考答案(1)mov dx,1234h(2

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论