文档介绍:第3章 8086的寻址方式和指令系统
3-1 8086的寻址方式
3-2 指令的机器码表示方法
3-3 8086 的指令系统
3-1 8086的寻址方式
立即寻址方式
寄存器寻址方式
直接寻址方式
寄存器间接寻址方式
寄存器相对寻址方式
基址变址寻址方式
相对基址变址寻址方式
其它
寻址方式
操作数:单、双、无;源、目的;
指令中用于确定操作数存放地址的方法
寻找和获得操作数、操作数存放地址或指令转移地址的方法
数据寻址和指令寻址
操作数及操作结果存放的地点:指令的地址码字段中;寄存器中;存储器的数据段、堆栈段或附加数据段中。
三种基本寻址方式:立即寻址方式、寄存器寻址方式和存储器寻址方式
存储器寻址又包括多种寻址方式
立即寻址方式
立即寻址方式寻找的操作数紧跟在指令操作码之后。
例: MOV AL,04H
MOV AX,1234H
MOV AX,0004H
MOV AX,0FF02H
MOV AX,COUNT(用EQU定义COUNT)
寄存器寻址方式
寄存器寻址是指寻找的操作数在某个寄存器中。
例 MOV AX,BX
MOV CL,AH
直接寻址方式
直接寻址方式是指寻找的操作数的地址在指令中直接给出
直接寻址
例: MOV AX,[2000H]
MOV AL,[2000H]
段超越前缀
例: MOV AX,ES:[2001H]
符号地址
例: MOV AX,ADDR
MOV AX,[ADDR]
*ADDR的定义
寄存器间接寻址方式
操作数的地址被放在寄存器中
例: MOV AX,[BX]
MOV BX,[SI]
MOV AX,ES:[DI]
寄存器相对寻址方式
操作数的偏移地址是寄存器的值与一个整数之和
例: MOV AX,COUNT[DI]
MOV AX,[COUNT+SI]
MOV AL,[BX+100H]
MOV AX,[DI-6]
MOV AX,8[BP]
*COUNT:符号名或变量名
基址变址寻址方式
操作数的偏移地址是两个指定寄存器的值之和
例: MOV AX,[BX][SI]
MOV AX,[BP][DI]
MOV AX,[BP+DI]
相对基址变址寻址方式
操作数偏移地址是指定寄存器的值与相对偏移量之和
例: MOV AX,ADDR[BX][DI]
MOV AX,ADDR[BX+SI]
MOV AX,[ADDR+BP+SI]
MOV AX,[BX+DI-100H]