chp5-1 指令系统.pptVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第五章 指令系统 5.1 指令系统概述 5.2 指令格式 5.3 指令和数据的寻址方式 5.4 堆栈寻址方式 5.5 典型指令 5.6 Hanoi塔实例 指令在计算机系统中的地位 1、是软件和硬件分界面的一个主要标志 硬件设计人员采用各种手段实现它; 软件设计人员则利用它编制各种各样的系统软件和应用软件 2、是硬件设计人员和软件设计人员之间的分界面,也是他们之间沟通的桥梁。 3、如何在保证向后兼容的限制条件下设计出更好的计算机? 应该定义一套在当前和将来的技术条件下能够高效实现的指令集 应该为编译器提供明确的编译目标 5.1 指令系统的概述 0、指令系统的发展 完善的计算机指令系统应具备 完备性 有效性:时间、空间 规整性:对称性、匀齐性、一致性 兼容性 从计算机组成的层次结构讲分为 微指令、机器指令、宏指令 指令格式:用二进制代码表示的指令形式。 计算机语言 1、指令系统层的性质 指令系统层是程序员眼中所看到的计算机,可把编译器的输出定义为指令系统层。为了能够生成指令系统层代码,编译器设计者必须了解计算机的存储模式、寄存器组织、合法的数据类型和指令等信息,所有这些都是由指令系统层定义的 所有编译器设计者不可见的特性都不属于指令系统层 微体系结构采用微码还是组合逻辑 采用流水线技术和超标量技术等 但是若确实能影响到性能的特性,则对编译器是可见的 如超标量能在一个周期内发射两条指令等 定义方式 有正式文档定义:SPARC V9,包括必须实现的标准部分和帮助读者理解的信息部分 没有正式文档定义:Pentium 4 指令系统层的两个模式 内核模式 运行OS,可以运行所有的指令 用户模式 运行用户的应用程序,不允许运行某些特殊的敏感指令,如直接管理cache的指令 2、存储模式 几乎所有的计算机都把内存分成具有连续地址的8位长度的单元 ASCII UNICODE ? (1)字的访问 P4低3位地址信号始终为0,所有的内存地址都是8的倍数,能够对齐 P4为了向后兼容,指令系统层能够从任意地址处开始内存操作 从地址7开始读取一个4字节的字? 需要额外的逻辑,使得芯片更加复杂 内存编址 单一线性空间,如264 指令地址空间和数据地址空间分离 可以采用32位地址同时获得232的程序空间和232的数据空间 数据的写操作不会意外地覆盖程序,减少了程序出错的可能 跟指令与数据分离的L1 cache不同 (2)内存语义 内存访问一致性 单处理器中的微指令重排和多处理器 极端1:所有的操作都被串行化 极端2:内存不保证操作次序,使用SYNC指令 硬件自动地阻塞特定的内存操作(如具有RAW和WAR依赖关系的操作),这些微体系结构层导致的特性暴露在了指令系统层,正是微指令重新排序、深度流水线和多级数据缓存这类底层实现导致了这种模式的流行 3、寄存器 在指令系统层都有可以访问的寄存器,其作用是控制程序执行,保存中间结果,以及用于一些其它目的 专用寄存器 通用寄存器 标志寄存器(Program Status Word),最重要的条件码包括: N:当结果为负数时设置 Z:当结果为0时设置 V:当结果产生溢出时设置 C:当结果产生了最高位进位时设置 A:当结果在第3位产生进位(辅助进位)时设置 P:当结果具有偶校验时设置 4、P4指令系统概述 IA-32体系结构 引入了MMX、SSE、SSE2等多媒体处理指令 三种操作模式 实模式 虚拟8086模式 保护模式 地址空间大,内存分为16384个段,每个段都从地址0到232-1 寄存器有32位的EAX、EBX、ECX、EDX,可以用作16位或者8位的;还有32位的ESI、EDI、EBP、ESP、EIP(扩展的指令指针)和EFLAGS(PSW寄存器)和16位的CS、SS、DS、ES、FS、GS 5.2 指令格式 影响计算机指令格式的因素 机器的字长 存储器的容量 指令的功能 指令能反映以下信息 做什么操作 如果需要操作数,从哪里取 结果送哪里 下一条指令从哪里取 所以指令格式为 1、操作码 每条指令都要规定一个操作码 不同的指令采用不同的编码,CPU通过指令译码器来解释每个操作码 其位数由指令系统规模决定的 等长(指令规整,译码简单) 例如IBM 370机,该机字长32位,16个通用寄存器R0~R15,共有183条指令;指令的长度可以分为16位、32位和48位等几种,所有指令的操作码都是8位固定长度。 固定长度编码的主要缺点是:信息的冗余极大,使程序的总长度增加。 非等长 Huffman编码 基本原理是,对于使用频率很高的指令,采用较短的操作码位数进行编码;对于使用频率很低的指令,采用较长的操作码位数进行编码,从而缩短了程序的总长度。 操作码字段的位数不固定,增加了指令译码和分析的难度

文档评论(0)

82393aa + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档