8086存储器编址和I/O编址

1)存储器编址
由于微处理器内部的寄存器和ALU都是16位的,为了方便20位的地址管理,在8086对存储器管理的设计中,采用了分段管理的技术。
采用分段方法进行编址的优点:
减少指令长度,提高指令执行速度。
为程序的浮动装配创造了条件。
(1)物理地址和逻辑地址
对应每个物理存储单元都有一个唯一的20位编号,就是物理地址,从00000H~FFFFFH。
用户编程时,采用逻辑地址,形式为: 段地址 : 偏移量
一个存储单元具有一个唯一的物理地址,但具有多个逻辑地址。
(2)逻辑地址转换为物理地址
将逻辑地址中的段地址左移4位,加上偏移量就得到20位物理地址。
(3)段寄存器使用时的一些基本约定
这里写图片描述
(4)段分配方式
8086对逻辑段要求:
每个段最大限制为64KB
段地址的低4位为0000B
各段可以独立占用64KB存储区,各段也可以允许重叠
1MB空间最多能分成64K段
1MB空间最少能分成16个段
(5)8086系统几个固定使用的区域
00000H~003FFH:中断向量表
B0000H~B0F9FH:单色显示器的显示缓冲区
B8000H~BBF3FH:彩色显示器的显示缓冲区
FFFF0H~FFFFFH:无条件转移指令

2)I/O编址
8086允许有65536(64K)个8位的I/O端口,两个编号相邻的8位端口可以组合成一个16位的端口。(BHE#=0、A0=0)
8086的I/O可采用独立编址方式
- I/O地址空间:64K
- 端口地址范围:0000~FFFFH
- 8位/16位端口

- 对I/O端口操作时,需要用专门的指令进行操作,并且只能够通过累加器(AL或AX)来完成。

8086的I/O亦可采用统一编址方式

  • 0
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值