• linkedu视频
  • 平面设计
  • 电脑入门
  • 操作系统
  • 办公应用
  • 电脑硬件
  • 动画设计
  • 3D设计
  • 网页设计
  • CAD设计
  • 影音处理
  • 数据库
  • 程序设计
  • 认证考试
  • 信息管理
  • 信息安全
菜单
linkedu.com
  • 网页制作
  • 数据库
  • 程序设计
  • 操作系统
  • CMS教程
  • 游戏攻略
  • 脚本语言
  • 平面设计
  • 软件教程
  • 网络安全
  • 电脑知识
  • 服务器
  • 视频教程
  • JavaScript
  • ASP.NET
  • PHP
  • 正则表达式
  • AJAX
  • JSP
  • ASP
  • Flex
  • XML
  • 编程技巧
  • Android
  • swift
  • C#教程
  • vb
  • vb.net
  • C语言
  • Java
  • Delphi
  • 易语言
  • vc/mfc
  • 嵌入式开发
  • 游戏开发
  • ios
  • 编程问答
  • 汇编语言
  • 微信小程序
  • 数据结构
  • OpenGL
  • 架构设计
  • qt
  • 微信公众号
您的位置:首页 > 程序设计 >汇编语言 > 实模式存储器寻址

实模式存储器寻址

作者:汇编爱好者 字体:[增加 减小] 来源:互联网 时间:2017-06-17

汇编爱好者通过本文主要向大家介绍了明股实债的基本模式为,理实一体化教学模式,明股实债的基本模式,实模式,明股实债模式等相关知识,希望对您有所帮助,也希望大家支持linkedu.com www.linkedu.com
</div>    80x86中除8086/8088只能在实模式下工作外,其他微处理器均可在实模式或保护模式下工作。实模式就是为8086/8088而设计的工作方式,实模式下允许的最大寻址空间为1MB。它要解决在16位字长的机器里怎么提供20位地址的问题,而解决的办法是采用存储器地址分段的方法。

    1.存储器地址的分段

    段:程序员在编制程序时要把存储器划分成段,在每个段内地址空间是线性增长的。段的最大长度为64KB,以便能用16位二进制数表示段内地址。

    小段:从0地址开始,每16字节为一小段。小段的首地址用16进制数表示时其最低位为0。

    段的起始地址:段不能起始于任意地址,而必须从任一小段(paragraph)的首地址开始。

    物理地址、段地址、偏移地址

    1.物理地址(PA):在1MB的存储器里,每一个存储单元都有一个唯一的20位地址,称为该存储单元的物理地址(20位)。20位物理地址由16位段地址和16位偏移地址组成。

    2.段地址:段起始地址的高16位值(16位),低4位固定为0被省去。

    3.偏移地址(偏移量EA):指在段内相对于段起始地址的偏移值(16位)。

    4.物理地址 = 段地址×10H + 偏移地址。用段地址:偏移地址表示。

    2.段寄存器

    段寄存器:在8086~80286中,有4个专门存放段地址的寄存器。

    代码段CS:存放当前正在运行的程序。

    数据段DS:存放当前运行程序所用的数据。

    堆栈段SS:定义堆栈的所在区域。

    附加段ES:附加的数据段。在80386及其后又增加了FS和GS两个附加数据段寄存器。

    除非专门指定,一般情况下,各段在存储器中的分配是由操作系统负责的。而且允许段重叠。如果段超过64KB则将其作为2个以上的段,并动态修改段地址。

    3.保护模式存储器寻址

    从80286起,就引出了保护模式的存储器寻址,其直接原因:首先是实模式的寻址空间为1MB,这不能满足80286的16MB和80386等的4GB或更多的地址空间寻址。其次是为了使微机系统能支持多任务处理。在系统支持多任务功能的同时,系统也支持了虚拟存储器特性。

    1)逻辑地址

    在实模式下逻辑地址即为段地址:偏移地址。物理地址 = 段地址×10H + 偏移地址

    在保护模式下逻辑地址则由选择器和偏移地址两部分组成。选择器存放在段寄存器中,但它不能直接表示段基地址,而由操作系统通过一定的方法取得段基地址,再和偏移地址相加,从而求得所选存储单元的物理地址。

    2)描述符

    描述符用来描述段的大小、段在存储器中的位置及其控制和状态信息,它由基地址、界限、访问权和附加字段四部分组成。描述符的内容是由系统设置的,而不是由用户建立的。

    基地址(base)部分用来指定段的起始地址;

    界限(limit)部分存放着该段的段长度;

    访问权(access rights)部分用来说明该段在系统中的功能,并给出该段的一些控制信息;

    附加字段部分在386及其后继机型中存在,它用来表示该段的一些属性。

    系统按选择器的内容,根据指定的途径可以找到所选段对应的描述符,从而可以根据其给出的基地址和界限值,确定所要找的存储单元所在的段,再加上逻辑地址中指定的偏移地址,就可以找到相应的存储单元。

</div>
分享到:QQ空间新浪微博腾讯微博微信百度贴吧QQ好友复制网址打印

您可能想查找下面的文章:

  • 实模式存储器寻址

相关文章

  • 2017-06-28汇编源码系列之chips
  • 2017-06-28汇编教程之树型视图控件
  • 2017-06-28汇编教程:VxD程序设计入门
  • 2017-06-28汇编语言套装软件制作
  • 2017-06-28汇编教程:管道
  • 2017-06-28汇编教程之处理鼠标按键消息
  • 2017-06-28专截320*200的截画程序
  • 2017-06-28事件对象在多线程编程中的应用
  • 2017-06-28汇编语言编写DOS下的内存驻留程序(4)
  • 2017-06-1780x86微处理器

文章分类

  • JavaScript
  • ASP.NET
  • PHP
  • 正则表达式
  • AJAX
  • JSP
  • ASP
  • Flex
  • XML
  • 编程技巧
  • Android
  • swift
  • C#教程
  • vb
  • vb.net
  • C语言
  • Java
  • Delphi
  • 易语言
  • vc/mfc
  • 嵌入式开发
  • 游戏开发
  • ios
  • 编程问答
  • 汇编语言
  • 微信小程序
  • 数据结构
  • OpenGL
  • 架构设计
  • qt
  • 微信公众号

最近更新的内容

    • 汇编与C语言的配合使用
    • 汇编语言的艺术-准备工作(四)
    • 动态库的执行时间
    • 汇编源码系列之free
    • 分支程序设计
    • (汇编源代码 )The 808 Virus
    • 汇编语言程序设计(五)
    • 汇编源码系列之drives
    • 汇编教程:控制转移
    • 汇编教程:多文档界面(MDI)

关于我们 - 联系我们 - 免责声明 - 网站地图

©2020-2025 All Rights Reserved. linkedu.com 版权所有