- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第二章 80X86微处理器的结构 张德煌 第二章 80X86微处理器的结构 张德煌 虚拟存储器地址是一个概念性的逻辑地址,它与内存物理地址之间通过一个转换表对应。只有虚拟存储器地址中的内容被读入内存后,虚拟存储器地址才有对应的物理地址填入转换表,当虚拟存储器地址中的内容未读入内存时,与之对应的内存物理地址为空。 在段式虚拟存储器中,程序访问的逻辑地址以“段号+段内偏移地址”的形式给出。“段号”是一个16位数值,它表示该段在段表中的序号,被称为段选择子(Selector,又称选择符)。选择子指向的记录被称为描述子(Descriptor 又称描述符),用于描述该段的相关信息 程序访问的逻辑地址可以由“逻辑页号+页内偏移地址”构成。逻辑页号用于表示在页表中该地址所在的页表记录项的序号,页表记录项中存放着页的物理起始地址,它与逻辑地址的“页内偏移地址”相加得到实际要访问的物理地址。 存放页起始地址的项放在一起构成页表,每个页表占用4个字节,用于存放20位的页起始地址和页属性。 1)GDTR(Global Descriptor Table Register) 全局描述子表寄存器GDTR是一个48位字长的寄存器。包括两部分:一部分是全局描述子表的32位段基址,另一部分是全局描述子表的16位段限。 2) IDTR(Interrupt Descriptor Table Register) 中断描述子表寄存器IDTR也是一个48位字长的寄存器,同样包括32位中断描述子表的段基址和16位段限。 3) LDTR(Local Descriptor Table Register) 局部描述子表寄存器是一个16位的寄存器,用于存放局部描述子表的选择子。操作系统为每个任务创建一个局部描述子表(LDT),用于存放该任务使用段的描述子。 2.6.4 调试和测试寄存器 80386以上的处理器中还有调试寄存器和测试寄存器,用于排除故障、测试分页和Cache状态等。 1. 调试寄存器(Debug Registers) 80386以上的微处理器中定义了6个用于调试的寄存器,命名为DR0~DR5,其中DR0~DR3指定了4个线性断点地址,DR7为调试控制寄存器,用于设置断点,DR6为调试状态寄存器,用于显示断点的当前状态。这是一组32位的寄存器,是程序员可访问的,提供片上调试支持。 2. 测试寄存器(Test Registers) 80386中定义了2个测试寄存器,分别命名为TR6和TR7,用于测试TLB(Translation Lookaside Buffer,转换后备缓冲器)。TLB中保存着最常用的页表地址转换关系。TR6是TLB的命令测试寄存器,指示读写TLB的入口,TR7是TLB的数据寄存器,保存TLB的测试数据。 80486处理器中增加了3个用于调试片上Cache的测试寄存器TR3、TR4和TR5,其中TR3为Cache数据寄存器、TR4为Cache状态寄存器,TR5为Cache控制寄存器。 Pentium处理器中取消了测试寄存器组TR,测试寄存器的功能由一组“模型专用寄存器”MSR(Model Special Registers)实现。Pentium处理器中专门使用两条指令来访问MSR寄存器,RDMSR指令和WRMSR指令。 2.6.5 浮点寄存器 从80486处理器开始,80X86系列微处理器在片内都集成了FPU(Floating Processing Unit,浮点处理部件),从而使CPU的运算能力得了极大提高。这些浮点运算部件使用专门的浮点寄存器 。 这些寄存器包括:8个数据寄存器、1个标记字、1个控制寄存器、1个状态寄存器、1个指令指针以及1个数据指针 。 3.状态寄存器(Status Register) 状态寄存器用于存放16位状态字,反映FPU的工作状态 5.指令和数据指针(Instruction and Data Pointer) 在80486处理器中使用了两个指针——指令指针和数据指针.用于发生故障时能够指向指令的地址和数据存储器操作数的地址。 15 14 TAG7 64位数值有效位 15位阶码值 符号位 R7 TAG6 64位数值有效位 15位阶码值 符号位 R6 TAG5 64位数值有效位 15位阶码值 符号位 R5 TAG4 64位数值有效位 15位阶码值 符号位 R4 TAG3 64位数值有效位 15位阶码值 符号位 R3 TAG2 64位数值有效位 15位阶码值 符号位 R2 TAG1 64位数值有效位 15位阶码值 符号位 R1 TAG0 64位数值有效位
您可能关注的文档
最近下载
- 某尾矿溢水塔回水隧洞封堵工程施工方案.pdf VIP
- 婴幼儿的早期教育工作总结PPT.pptx VIP
- 【高考真题】重庆市2025年高考真题物理试卷(含答案).pdf VIP
- 教案对外汉语我是跟旅游团一起来的.pdf VIP
- 2024年秋季新教材人教版一年级上册数学全册教案-129页.docx VIP
- 2024-2025学年初中英语九年级上册牛津上海(试用本)教学设计合集.docx
- 2020年《城镇燃气设计规范》GB50028-2006 .pdf VIP
- T_CDHA 13-2023 热力管道用金属波纹管补偿器.pdf
- 燃气工程技术专业基础知识考试题库(含答案).docx VIP
- 室内滑雪馆消防设计探讨.pdf VIP
文档评论(0)