您的位置:首页 > 其它

微机接口寻址方式分类

2017-04-15 11:53 218 查看
1.立即数寻址方式

指令的操作数字段直接存储着数据,此类指令一般用于对reg 和存储内存赋值的操作指令

2.寄存器寻址方式

MOV AX,BX(寄存器名标识其内容)

存储器寻址方式

1.直接寻址方式

直接寻址方式的有效地址在指令中直接给出

默认的段地址在DS段寄存器,可使用段超越前缀改变

用中括号包含有效地址,表达存储单元的内容

MOV AX, [2000H] ;AX←DS:[2000H]
MOV AX, ES: [2000H] ;AX←ES:[2000H]


2. 寄存器间接寻址方式
有效地址存放在基址寄存器BX、基址指针寄存器BP、变址寄存器SI、DI中
使用BX、SI、DI时,默认的段地址在DS段寄存器,可使用段超越前缀改变
如果BP,默认的段地址在SS段寄存器


MOV AX, [BX]    ;AX←DS:[BX]
MOV AX, [BP]    ;AX←ES:[BP]


3. 寄存器相对寻址方式
有效地址是寄存器内容与有符号8位或16位位移量之和,寄存器可以是BX、BP或SI、DI


有效地址=BX/BP/SI/DI+8/16位位移量

段地址对应BX/SI/DI寄存器默认是DS,对应BP寄存器默认是SS;可用段超越前缀改变

MOV AX, [SI+06H]    ;AX←DS:[SI+06H]
MOV AX, 06H[SI] ;AX←DS:[SI+06H]


4. 基址变址寻址方式
有效地址由基址寄存器(BX或BP)的内容加上变址寄存器(SI或DI)的内容构成:


有效地址=BX/BP+SI/DI

段地址对应BX基址寄存器默认是DS,对应BP基址寄存器默认是SS;可用段超越前缀改变

MOV AX, [BX+SI] ;AX←DS:[BX+SI]
MOV AX, [BX+SI] ;AX←DS:[BX+SI]


5. 相对基址变址寻址方式


有效地址是基址寄存器(BX/BP)、变址寄存器(SI/DI)与一个8位或16位位移量之和:

有效地址=BX/BP+SI/DI+8/16位位移量

段地址对应BX基址寄存器默认是DS,对应BP基址寄存器默认是SS;可用段超越前缀改变

MOV AX, [BX+DI+6]   ;AX←DS:[BX+DI+6]
MOV AX, 6[BX+DI] MOV AX, 6[BX][DI]
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: