Q第3章寻址方式和指令系统 ●指令系统 组指令的集合 指令操作码操作数…操作数 寻址方式 与数据有关的寻址方式 与转移地址有关的寻址方式
1 • 指令系统 一组指令的集合 第3章 寻址方式和指令系统 指令 操作码 操作数 ... 操作数 • 寻址方式 与数据有关的寻址方式 与转移地址有关的寻址方式
31寻址方式 8086的寻址方式 与数据有关的寻址方式:以MO指令为例 立即寻址 MOV AX. 3069H 寄存器寻址 MOV AL. BH 直接寻 MOV AX,2000H I 寄存器间接寻址: MOV AX,[Bx 寄存器相对寻址 MOV AX, COUNTISI 基址变址寻址 I MOV AX, I BPIIDII 1相对基址变址寻址 MOV AX, MASK I BXIISII 存储器寻址
2 3.1 寻址方式 一、8086的寻址方式 1.与数据有关的寻址方式:以MOV 指令为例 • 立即寻址 MOV AX , 3069H • 寄存器寻址 MOV AL , BH • 直接寻址 MOV AX , [ 2000H ] • 寄存器间接寻址 MOV AX , [ BX ] • 寄存器相对寻址 MOV AX , COUNT [ SI ] • 基址变址寻址 MOV AX , [ BP ] [ DI ] • 相对基址变址寻址 MOV AX , MASK [ BX ] [ SI ] 存储器寻址
Q(立即寻址方式一操作放在指今中给出 指令格式: MOV AL,5 MOV AX, 3064H MOV AL。A 只能用于SRC字段MOv40H,AL SRC和DST的字长一致 MOV AH. 3064H x
3 (1) 立即寻址方式*—— 操作数在指令中给出 指令格式: MOV AL, 5 MOV AX, 3064H MOV AL, ‘A’ * 只能用于 SRC 字段 MOV 40H, AL * SRC 和 DST 的字长一致 MOV AH, 3064H
(2)寄存器寻址方式一操作数在指定的寄存器中 MOV AX BX MOV AL. BH MOV AX. 3064H 字节寄存器只有 AH AL BH BL CH CL DH DL SRC和DST的字长一致 MOV AH. BX X CS不能用MOV指令改变 MOV CS,AX
4 (2) 寄存器寻址方式*— 操作数在指定的寄存器中 MOV AX, BX MOV AL, BH MOV AX, 3064H * 字节寄存器只有 AH AL BH BL CH CL DH DL * SRC 和 DST 的字长一致 MOV AH, BX * CS 不能用 MOV 指令改变 MOV CS, AX
(3)直接寻址方式一有效地址EA由指令直接给出 例: MOV AX,[200H EA=2000H,假设(DS)=3000H,那么PA=32000H AL 30 50 32000 50 30 X)=3050H 隐含的段为数据段DS 可使用段跨越前缀 MOV AX, ES: 2000H 操作数地址可由变量(符号地址)表示,但要注意 VALUE DB 10 变量的属性 MOV AH. VALUE MOV AX VALUE X MOAx, WORD PTR VALUE√
5 (3) 直接寻址方式*— 有效地址EA由指令直接给出 例:MOV AX, [ 2000H ] EA=2000H, 假设(DS)=3000H, 那么PA=32000H * 隐含的段为数据段 DS * 可使用段跨越前缀 MOV AX, ES: [2000H] * 操作数地址可由变量(符号地址)表示, 但要注意 VALUE DB 10 变量的属性 MOV AH, VALUE MOV AX, VALUE MOV AX, WORD PTR VALUE 50 30 32000 AH AL 30 50 (AX) = 3050H