【微机原理】8086的寻址方式

以MOV指令为例,其格式为:

MOV  目的操作数,源操作数
1.立即寻址

可以是8位或16位,如:

MOV AX,1234H
2.寄存器寻址

操作数事先存放在寄存器中,如:

MOV AX,BX
MOV AL,BL
3.存储器寻址

我们将操作数的地址偏移量称为有效地址(Effective Address,EA)

EA=基址+变址+位移量

基址只能存放在BX或BP中;变址只能存放在SI或DI中;位移量可以是8位或16位的带符号地址(可以是负数),例如:

BX+SI+1234H

基址、变址、位移量都是可选的,比如可以只有基址和位移量,叫寄存器相对寻址。

4.端口寻址

直接端口寻址。此时端口地址只有八位,如:

IN AL,20H	;从20H号端口读入8位数据
OUT 20H,AX	;把AX中的内容送到20H端口和21H端口
			;其中AL的值送20H,AH的值送21H
			;输入输出只能逐个字节处理,当尝试用字进行输入输出,会按并行处理

间接端口寻址。此时端口地址为16位,需要将端口地址放于寄存器DX中再去寻址,如:

MOV DX,1000H	;端口地址为1000H
OUT DX,AL		;间接端口寻址
MOV DX,20H		;汇编程序会自动在20H前补零变为16位的0020H
IN AX,DX		;将[0020H]端口的值送AL
				;并将[0021H]端口的值送AH
  • 2
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值