1 第一讲 第三章 指令系统--寻址方式 回顾: 8086/8088的内部结构和寄存器,地址分段的概念,8086/8088的工作过程。 重点和纲要:指令系统--寻址方式。有关寻址的概念;6 种基本的寻址方式及有效地址的计算。 教学方法、实施步骤 时间分配 教学手段 回 顾 5”×2 板书 计算机 投影仪 多媒体课件等 讲 授 40” ×2 提 问 3” ×2 小 结 2” ×2 讲授内容: 3 .1 8 0 8 6 /8 0 8 8 寻址方式 首先,简单讲述一下指令的一般格式: 操作码 操作数 „„ 操作数 计算机中的指令由操作码字段和操作数字段组成。 操作码:指计算机所要执行的操作,或称为指出操作类型,是一种助记符。 操作数:指在指令执行操作的过程中所需要的操作数。该字段除可以是操作数本身外,也可以是操作数地址或是地址的一部分,还可以是指向操作数地址的指针或其它有关操作数的信息。 寻址方式就是指令中用于说明操作数所在地址的方法,或者说是寻找操作数有效地址的方法。8086/8088 的基本寻址方式有六种。 1 .立即寻址 所提供的操作数直接包含在指令中。它紧跟在操作码的后面,与操作码一起放在代码段区域中。如图所示。 例如:MOV AX,3000H 立即数可以是 8 位的,也可以是 16 位的。若 2 是16 位的,则存储时低位在前,高位在后。 立即寻址主要用来给寄存器或存储器赋初值。 2 .直接寻址 操作数地址的16 位偏移量直接包含在指令中。它与操作码—起存放在代码段区域,操作数一般在数据段区域中,它的地址为数据段寄存器DS 加上这 16 位地址偏移量。如图 2-2 所示。 例如: MOV AX,DS:[2000H]; 图 2-2 (对 DS 来讲可以省略成 MOV AX,[2000H], 系统默认为数据段) 这种寻址方法是以数据段的地址为基础,可在多达 64KB 的范围内寻找操作数。 8086/8088 中允许段超越,即还允许操作数在以代码段、堆栈段或附加段为基准的区域中。此时只要在指令中指明是段超越的,则16 位地址偏移量可以与CS 或SS 或ES 相加,作为操作数的地址。 MOV AX,[2000H] ;数据段 MOV BX,ES:[3000H] ;段超越,操作数在附加段 即绝对地址=(ES)*16+3000H 3 .寄存器寻址 操作数包含在CPU 的内部寄存器中,如寄存器AX、BX、CX、DX 等。 例如:MOV DS,AX MOV AL,BH 4 .寄存器间接寻址 操作数是在存储器中,但是,操作数地址的16 位偏移量包含在以下四个寄存器SI、DI...