您的位置:首页 > 其它

寻址方式总结

2006-10-15 15:40 295 查看
当操作数存放在存储器时,存储单元的物理地址有两部分:段地址和偏移地址.
指令中操作数也可以不在基本规定的段区内,必须在指令中指定段寄存器,即段超越.
存取的约定段及段超越(可修改段),如下所示 :
存取方式默认段偏移地址段超越
取指令CSIP- - - -
堆栈操作SSSP- - - -
源串DSSICS,ES,SS
目的串ESDI- - - -
BPSS(EA)CS,DS,ES
一般数据DS(EA)CS,ES,SS
注:EA=Effect Address即有效地址, - - - -表示不可以段超越
 
 
基址寄存器: BX , BP
变址寄存器: SI , DI
除基址BX , BP和变址SI , DI这四个寄存器可间接寻址外(即加上中括号[ ]),其它寄存器一律不准间接寻址.
 
 
 
与数据有关的寻址方式
立即寻址MOV AX , 常数
直接寻址 MOV AX , [常数] ;加上中括号 或 MOV AX , 变量名或标号
寄存器寻址MOV AX , 通用寄存器
寄存器间接寻址MOV AX , [(BX,BP,SI,DI)中的一个] ;以下四行均需加上中括号
寄存器相对寻址MOV AX , [(BX,BP,SI,DI)中的一个 + 偏移量]
基址变址寻址MOV AX , [基址寄存器 + 变址寄存器]
相对基址变址寻址MOV AX , [基址寄存器 + 变址寄存器 + 偏移量]
 
 
 
与转移地址有关的寻址方式(CALL指令也可用下列四种中任何一种寻址)
寻址方式格式转移的有效地址
段内直接寻址JMP SHORT 标号IP=标号, CS值不变
段内间接寻址JMP WORD PTR 标号[基/变址寄存器] IP=(EA), CS值不变
段间直接寻址MP FAR PTR 标号IP=标号的偏移地址,CS=标号的段对址
段间间接寻址JMP DWORD PTR 标号[基/变址寄存器]IP=(EA) , CS=(EA-2)
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: