- 1、本文档共31页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
-微处理器内部结构补充8086内存管理
第2章 微处理器内部结构 补充. 8088/8086存储器管理 2.2.1 整数寄存器——3. 段寄存器 第2章 微处理器内部结构 2.3 微处理器存储器组织 2.3.1 IA-32工作方式 2.3.2 实方式的逻辑段 2.2.1 整数寄存器 3. 段寄存器 2.3.3 保护方式的段页管理 信息存储 基本单位是二进制位(bit),表达0或1 1个字节(Byte) 8 bit 1个字(Word) 16 bit=2 Byte 1个双字(Double Word) 32 bit= 4 Byte 1个4字(Quad Word) 64bit= 8 Byte 现代计算机存储器 按字节寻址(Byte Addressable) 每个存储单元 一个字节,一个地址 补充1. 8088/8086存储器管理(补1) 8088/8086的主存寻址范围(补1) 地址线 20位 可寻址物理存储空间 220B 物理地址范围 00000H~FFFFFH 分段管理(补1) 方法 物理空间划分为段 段——逻辑段 作用 避免 信息混淆 遵循 模块化程序设计思想 内存(主存)信息分类(补1) 代码 指令操作码,即CPU执行的操作 数据 数值和字符等,即程序加工对象 堆栈 临时保存的返回地址或中间结果 8088/8086的逻辑段及其功能(补1) 代码段(Code Segment) 存放指令代码 程序的指令代码必须安排在代码段 数据段(Data Segment) 存放数据 数据默认存放在数据段,也可放在其他段 堆栈段(Stack Segment) 堆栈区域 程序使用的堆栈一定在堆栈段 逻辑地址——类比:长途电话号码(补1) 区号 0532 本地号 拨出号码 0532×100000000 + —————————————— 0532 8088/8086的逻辑地址(补1) 编程时使用 构成 段地址 段内偏移地址 表示方法 段地址:段内偏移地址 物理地址与逻辑地址的区别 物理地址 地址总线上输出的地址,用于外部硬件连接 逻辑地址 在微处理器内部、程序员编程时采用的地址 由 逻辑地址 计算 物理地址 关键词 物理地址:PA,Physical Address 20位 逻辑地址:Logical Address 段地址(段基址):SA,Segment Address 16位 有效地址(段内偏移地址):EA,Effective Address 16位 物理地址计算方法 物理地址=段基址×10H+偏移地址 PA SA EA ×10H:相当于 16 进制数最低位后添 1 个“0” 2 4 地址范围 物理地址(20位,地址线上送出的存储器绝对地址) 1MB(220B)存储区中的某一单元的地址 0~(220-1),即:00000H~FFFFFH 逻辑地址(编程时使用) 段基地址(16位):段的起始地址 0~(216-1),即:0000H~FFFFH 偏移地址(16位):某段内指定存储单元到段基址的距离 0~(216-1),即:0000H~FFFFH 2.2.1 整数寄存器—— 3. 段寄存器 16位 作用 存放段基址(指示逻辑段在主存的起始位置) 与其他寄存器的内容一起构成逻辑地址 段寄存器 段寄存器 16位80x86微处理器 代码段寄存器CS:当前代码段的起始位置 堆栈段寄存器SS:当前堆栈段的起始位置 数据段寄存器DS:当前数据段的起始位置 附加段寄存器ES:当前附加段的起始位置 IA-32微处理器增加 段寄存器FS和GS,属于数据段性质的段寄存器 8088/8086无这两个寄存器 段寄存器和其他寄存器构成逻辑地址 8088/8086 段基址、偏移地址和物理地址的关系 段缺省和段替换规则 段缺省 段寄存器名不出现在指令机器码和汇编格式中,操作性质隐含指定。 搭配规则 段寄存器和指针、变址寄存器有较固定的配用关系。 替换规则 在指令之前加上“CS”,“DS”,“SS”等段前缀,以指定的段寄存器替代隐含的段寄存器。 IA-32逻辑段的逻辑地址 代码段 CS∶EIP 下一条要执行逻辑段的逻辑地址 堆栈段 SS∶ESP操作堆栈中的数据 堆栈中的数据地址 SS=堆栈段的段地址 ESP=栈顶的偏移地址 数据段 默认通过DS∶EA,也可通过ES/FS/GS或SS/CS∶EA读取数据 DS/ES/FS/GS或SS/CS=数据所在逻辑段的段地址 存储器分段的一般规律 独立分开 连续 重叠(部分重叠或完全重叠) 例如 数据
文档评论(0)