chap2-计算机指令集结构概要.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文档。上传文档
查看更多
chap2-计算机指令集结构概要

2.3.2 RISC指令集功能的设计 1. CISC结构存在的缺点 (1) 在CISC结构的指令系统中,各种指令的使用频 率相差悬殊。 (2) CISC结构指令系统的复杂性带来了计算机体系 结构的复杂性,这不仅增加了研制时间和成 本,而且还容易造成设计错误。 (3) CISC结构指令系统的复杂性给VLSI设计增加了 很大负担,不利于单片集成。 2.3 指令集结构的功能设计 (4) CISC结构的指令系统中,许多复杂指令需要很 复杂的操作,因而运行速度慢。 (5) 在CISC结构的指令系统中,由于各条指令的功 能不均衡性,不利于采用先进的计算机体系结 构技术(如流水技术)来提高系统的性能。 2. RISC计算机 (1) 指令系统只包含那些使用频率很高的指令 和一些必要指令。 Intel 80X86最常用的十条指令 2.3 指令集结构的功能设计 执行频率排序 80X86指令 指令执行频率(%执行指令总数) 1 Load 22% 2 条件分支 20% 3 比较 16% 4 Store 12% 5 加 8% 6 与 6% 7 减 5% 8 寄存器-寄存器间 数据移动 4% 9 调用 1% 10 返回 1% 合 计 96% Intel 80X86最常用的十条指令 (2) 目的 使得计算机体系结构更加简单、更加合理和 更加有效,克服CISC结构的缺点,使机器速度更 快,程序运行时间缩短,从而提高计算机系统的 性能。 (3) 设计原则 选取使用频率最高的指令,并补充一些最有 用的指令; 每条指令的功能应尽可能简单,并在一个机 器周期内完成; 所有指令长度均相同; 2.3 指令集结构的功能设计 只有Load和Store操作指令才访问存储器; 其它指令操作均在寄存器之间进行; 以简单有效的方式支持高级语言。 2.3.3 控制指令 (1) 跳转: 当控制指令为无条件改变控制流时, 称之为“跳转”。 (2) 分支:当控制指令是有条件改变控制流时, 称之为“分支”。 2.3 指令集结构的功能设计 条件分支 跳转 过程调用 过程返回 (3) 控制流程的各种改变情况 2.3 指令集结构的功能设计 1. 控制指令的使用频率 (一台Load/Store型指令集结构的机器: SPECint92、Specfp92基准程序) 改变控制流的大部分指令是条件分支指令。 表示分支条件的技术 测试分支条件的方法 优 点 缺 点 条件码(CC) 在程序的控制下,由ALU操作设置特殊的位。 可以自由设置分支条件。 CC是额外状态,条件码限制了指令顺序,因为必须从一条指令将分支条件信息传送到分支指令。 条件寄存器 根据比较结果测试条件寄存器。 简单 占用了一个寄存器。 比较且分支 比较操作是分支指令的一部分,通常这种比较是受一定限制的。 一条指令完成了两条指令的功能。 分支指令的操作增多。 2. 常用的三种表示分支条件的技术及其优缺点 3. 分支目标地址的表示 ? PC-相对寻址:在指令中提供一个和程序计数 器(PC)的值相加的偏移量。 (1) 有效地缩短指令中表示目标地址的字段的 长度; (2) 使得代码在执行时与它被载入的位置无关。 关键问题是: 转移目标离当前控制指令的偏移量有多大? 2.3 指令集结构的功能设计 4. 过程调用和返回的状态保存 两种方法来保存寄存器的内容: (1) “调用者保存”方法 在一个调用者调用别的过程时,必须保存调用 者所要保存的寄存器,以备调用结束返回后,能够 再次访问调用者。 (2) “被调用者保存”方法 被调用的过程必须保存它要用的寄存器,保证 不会破坏过程调用者的程序执行环境,并在过程调 用结束返回时,恢复这些寄存器的内容。 ? 2.3 指令集结构的功能设计 2.3 指令集结构的功能设计 2.4 操作数的类型、表示和大小 操作数类型和操作数表示是软硬件主要界面之一 。 操作数类型:面向应用、面向软件

文档评论(0)

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

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

1亿VIP精品文档

相关文档