微处理器指令系统

上传人:艾力 文档编号:50662848 上传时间:2018-08-09 格式:PPT 页数:19 大小:1.16MB
返回 下载 相关 举报
微处理器指令系统_第1页
第1页 / 共19页
微处理器指令系统_第2页
第2页 / 共19页
微处理器指令系统_第3页
第3页 / 共19页
微处理器指令系统_第4页
第4页 / 共19页
微处理器指令系统_第5页
第5页 / 共19页
点击查看更多>>
资源描述

《微处理器指令系统》由会员分享,可在线阅读,更多相关《微处理器指令系统(19页珍藏版)》请在金锄头文库上搜索。

1、第4章第4章:4.1 8088/8086的寻址方式 从8088/8086的指令格式入手,论述:u立即数寻址方式 u寄存器寻址方式 u存储器寻址方式 进而熟悉8088/8086汇编语言指令格式,尤 其是其中操作数的表达方法 为展开8088/8086指令系统做好准备第4章:指令的组成 操作码说明计算机要执行哪种操作,如传送、运算 、移位、跳转等操作,它是指令中不可缺少的组成 部分 操作数是指令执行的参与者,即各种操作的对象 有些指令不需要操作数,通常的指令都有一个或两 个操作数,也有个别指令有3个甚至4个操作数操作码操作数指令由操作码和操作数两部分组成第4章:指令的助记符格式 操作数2,常被称为源

2、操作数src,它表示参与指 令操作的一个对象 操作数1,常被称为目的操作数dest,它不仅可以 作为指令操作的一个对象,还可以用来存放指令 操作的结果 分号后的内容是对指令的解释操作码 操作数1,操作数2 ;注释汇编语句格式第4章:指令的操作码和操作数 每种指令的操作码: u用一个助记符表示(指令功能的英文缩写) u对应着机器指令的一个或多个二进制编码 指令中的操作数: u可以是一个具体的数值 u可以是存放数据的寄存器 u或指明数据在主存位置的存储器地址第4章:操作数的寻址方式 系统设计了多种操作数的来源 u 指令中可以直接给出所使用的操作数本身,或者只给 出操作数所在的寄存器、存储器或I/O

3、端口的地址或地 址的计算方法。 寻找操作数的过程就是操作数的寻址 寻找指令中所需的操作数或操作数地址的方式称 为寻址方式 理解操作数的寻址方式是理解指令功能的前提 操作数采取哪一种寻址方式 u 一方面,会影响处理器执行指令的速度和效率 u 另一方面,对程序设计也很重要MOV指令第4章:4.1.1 立即数寻址方式 指令中的操作数直接存放在机器代码中,紧跟在 操作码之后(操作数作为指令的一部分存放在操 作码之后的主存单元中) 这种操作数被称为立即数imm u可以是8位数值i8(00HFFH) u也可以是16位数值i16(0000HFFFFH) 立即数寻址方式只允许源操作数为立即数,目标 操作数必须

4、是寄存器或存储器 u 不需要访问存储器,执行速度快演示演示MOV AX, 0102H;AX0102H第4章:4.1.2 寄存器寻址方式 操作数存放在CPU的内部寄存器reg中: u 8位寄存器r8: AH、AL、BH、BL、CH、CL、DH、DL u 16位寄存器r16: AX、BX、CX、DX、SI、DI、BP、SP u 4个段寄存器seg: CS、DS、SS、ES 寄存器名表示其内容(操作数) u 无需访问存储器,执行速度快 u 源操作数和目的操作数可同时使用寄存器寻址演示演示MOV AX, BX;AXBX第4章: 4.1.3 存储器寻址方式 操作数在主存储器中,用主存地址表示 程序设计时

5、,8088采用逻辑地址表示主存地址u 段地址在默认的或用段超越前缀指定的段寄存器中 u 指令中只需给出操作数的偏移地址(有效地址EA) 8086设计了多种存储器寻址方式 1、直接寻址方式 2、寄存器间接寻址方式 3、寄存器相对寻址方式 4、基址变址寻址方式 5、相对基址变址寻址方式第4章:1. 直接寻址方式 直接寻址方式的有效地址在指令中直接给出 默认的段地址在DS段寄存器,可使用段超越前 缀改变 用中括号包含有效地址,表达存储单元的内容 u 寻址时需要访问存储器演示演示MOV AX, 2000H;AXDS:2000HMOV AX, ES: 2000H;AXES:2000H第4章:2. 寄存器

6、间接寻址方式 有效地址存放在基址寄存器BX或变址寄存 器SI、DI中,默认的段地址在DS段寄存器, 可使用段超越前缀改变演示演示MOV AX, BX;AXDS:BX物理地址物理地址=(DS)*16+=(DS)*16+(BX)(BX)(SI)(SI)(DI)(DI) 如果指令中指定的寄存器是BP,则操作数在堆栈 段SS中,操作数物理地址:物理地址物理地址=(SS)*16+(BP)=(SS)*16+(BP)MOV BP, AX假设假设 ( (ssss)= 1000H, )= 1000H, (BP)=3000H, (BP)=3000H, (AX)=1234H (AX)=1234H 1000H1000

7、H3000H3000HSSSSBPBP 34H 34H 12H 12H 1000010000 + 3000+ 3000 130001300012H 34H12H 34HAH ALAH AL13000H13000H堆栈段堆栈段低地址低地址高地址高地址第4章:3. 寄存器相对寻址方式 有效地址是寄存器内容与有符号8位或16位位移 量之和,寄存器可以是BX、BP或SI、DI 有效地址BX/BP/SI/DI8/16位位移量 段地址对应BX/SI/DI寄存器默认是DS,对应BP寄 存器默认是SS;可用段超越前缀改变演示演示MOV AX, SI+06H;AXDS:SI+06HMOV AX, 06HSI;A

8、XDS:SI+06H第4章:4. 基址变址寻址方式 有效地址由基址寄存器(BX或BP)的内容加上 变址寄存器(SI或DI)的内容构成: 有效地址BX/BPSI/DI 段地址对应BX基址寄存器默认是DS,对应BP基 址寄存器默认是SS;可用段超越前缀改变演示演示MOV AX, BX+SI;AXDS:BX+SIMOV AX, BXSI;AXDS:BX+SI第4章:5. 相对基址变址寻址方式 有效地址是基址寄存器(BX/BP)、变址寄存器 (SI/DI)与一个8位或16位位移量之和: 有效地址BX/BPSI/DI8/16位位移量 段地址对应BX基址寄存器默认是DS,对应BP基 址寄存器默认是SS;可

9、用段超越前缀改变演示演示MOV AX, BX+DI+6;AXDS:BX+DI+6MOV AX, 6BX+DIMOV AX, 6BXDI第4章:存储器寻址方式中的变量变量指示内存中的数据,变量名具有地址属性。 存储器寻址方式中经常采用变量形式 变量的定义 WVAR DW 1234H ;定义16位变量WVAR,具有初值1234H ;假设其偏移地址为10H 单独引用变量名是直接寻址方式 MOV AX,WVAR ;指令功能:AX1234H ;等同于 MOV AX,0010H 相对寻址方式中,变量名表示其偏移地址,相当 于位移量 MOV AX, DI+WVAR ; MOV AX,WVARDI ;等同于

10、MOV AX,DI+0010H第4章:相对寻址方式中的位移量在寄存器相对寻址和相对基址变址寻址方式中, 其位移量不仅可用常量表示,也可用符号表示这个符号可以是变量名,例如WVAR变量,而且 支持多种表达形式 MOV AX, DI+WVAR ; ;等同于 MOV AX, WVARDI MOV AX,BX+SI+WVAR ;等同于 MOV AX, SI+WVARBx ;等同于 MOV AX, WVARBX+SI ;等同于 MOV AX, WVARBXSI第4章:操作数的表达符号(1) 操作数符号含义(寻址方式) i8一个8位立即数 i16一个16位立即数 imm代表i8或i16r8任意一个8位通用

11、寄存器 AH, AL, BH, BL, CH, CL, DH, DL r16任意一个16位通用寄存器 AX, BX, CX, DX, SI, DI, BP, SP reg代表r8或r16 seg段寄存器CS、DS、ES、SS第4章:操作数的表达符号(2)操作数符号含义(寻址方式) m8一个8位存储器操作数单元(包括所有主存 寻址方式) m16一个16位存储器操作数单元(包括所有主存 寻址方式)mem代表m8或m16 dest目的操作数 src源操作数掌握操作数的寻址方式后,进入指令学习汇编语言的两种语句格式执行性语句执行性语句用于表达处理 器指令(也称为硬指令),汇编后对应一条指 令代码。由处理器指令组成的代码序列是 程序设计的主体 标号: 硬指令助记符 操作数,操作数 ;注释 说明性语句说明性语句用于表达伪指 令,指示源程序如何汇编、变量怎样定义 、过程怎么设置等 名字 伪指令助记符 参数,参数, ;注释MOV指令的功能立即数寻址方式寄存器寻址方式直接寻址方式间接寻址方式相对寻址方式基址变址寻址方式相对基址变址寻址方式

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 行业资料 > 其它行业文档

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号