实地址模式和保护模式

本文介绍了逻辑地址和物理地址的区别,详细阐述了8086处理器在实地址模式下的分段机制和寻址方式,以及实模式的缺陷。接着,文章探讨了保护模式的出现原因,详细说明了保护模式下的存储器管理和寻址方式,特别是段描述符在GDT中的作用,以及线性地址与物理地址的关系。
摘要由CSDN通过智能技术生成

一、逻辑地址和物理地址

  • 物理地址:加载到内存地址寄存器中的地址,内存单元真正的地址
  • 逻辑地址:CPU生成的地址。相当于当前进程数据段的地址(是偏移地址)

二、什么是实地址模式

1、分段

        在程序装入内存时并不是整块装入。因为一个程序包含了很多数据结构,不能一概而论。例如代码是只读的,相对固定的;而数据则会随着程序的变化不断发生变化。因此在程序装入的时候是采用分段的方式,将不同的程序装入不同的区域。那么定位指令或数据就使用

<段号 : 偏移量>的方式。

       8086处理器中设置了CS(可执行代码)、DS(数据)、SS(堆栈)和ES(其他)这四个段寄存器。每个段寄存器都是16位的,对应地址总线中的高16位。

2实模式的寻址方式

        处理器8086有20根地址线,可以寻址1MB内存。但是,它内部的寄存器是16位的,如果按照原来的方式,把段寄存器的内容和偏移地址直接相加来形成物理地址的话,也智能得到16位的物理地址。因此如何用16位的CPU来访问20位的物理地址成为最大的问题。

        为什么要提供20位的地址线?

       你可能会想,让16位的CPU对应16位的地址线不就可以解决问题了吗?但是,16位的物理地址只能访问64k的内存,地址范围是0000H~FFFFH,共65536个字节,很显然这个容量肯定是不能满足需求的。而20位的物理地址就可以访问1MB的内存,地址范围是0000H~FFFFFH。</

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值