第 5 章 指令系统.pptVIP

  1. 1、本文档共182页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第 5 章 指令系统 本章学习内容 指令系统的设计方法 指令格式 寻址方式 CISC和RISC的概念 5.1 机器指令 指令:控制计算机执行某种操作的命令。 机器语言:计算机硬件实体直接表示控制信息的语言。 机器语言程序:用机器语言编制的程序。 机器语言是计算机硬件能直接理解并执行的语言,任何用其它语言编制的程序,都必须经过 “翻译”,翻译为机器语言程序,才能在机器中正确的运行。 一条指令就是机器语言的一个语句,用来说明机器硬件应完成的操作。 指令系统(指令集):一台计算机所能执行的全部指令的集合。 机器语言是面向机器的:不同的计算机系统,具有不同的指令,每一计算机系统都具有自己的指令系统。 指令系统必须是完备的:即任何运算都可以用指令系统中的指令编程实现。 指令系统是计算机体系结构的核心;是计算机系统硬件、软件的主要界面。它既是计算机硬件设计的主要依据,又是计算机软件设计的基石。所以一台计算机指令系统的优劣,直接影响着计算机系统的性能。 5.1.1 机器指令格式 指令字(指令代码):表示一条指令的一串二进制代码。 指令格式的设计内容: ⑴ 确定的指令字长度 ⑵ 划分指令字字段并加以定义 一条指令中应包含的信息: ① 操作码:表示指令的操作特性和功能。 ② 操作数的地址:指示操作数或操作数所在的地址。 ③ 存放操作结果的地址。 ④ 下一条指令的地址。 指令的基本格式: 各字段的指定方法: 显式指定:在指令字中明显地指定。 隐含指定:由设计者用约定的方法指定。 指令操作码均采用显式指定。 下一条指令的地址多采用隐含指定。 信息的存储结构不同,指定的地址也不一样,地址的结构也不同。 5.1.2 指令字的长度 指令字长度:一个指令字所包含的二进制信息的位数。 定长指令字:机器的指令系统中各种指令字的长度均为固定的。 可变长指令字:机器的指令系统中各种指令字的长度随指令的功能而异。 定长指令字的指令长度固定,结构简单,指令译码时间短,有利于硬件控制系统的设计,但定长指令字指令平均长度长、容易出现冗余码点、指令不易扩展。 可变长指令字的指令长度不定,结构灵活,能充分利用指令的每一位,指令的码点冗余少,平均指令长度短,易于扩展。但可变长指令的指令格式不规整,取指令时可能需要多次访存,导致不同指令的执行时间不一致,硬件控制系统复杂。 在按字节编址的存储器中,采用长度为字节的整倍数的指令,可以充分利用存储空间,增加内存访问的有效性。 为了合理地安排存储空间,并使指令能表达较丰富的内容,采用可变长指令将更加灵活有效。 5.1.3 指令的地址结构 CPU可直接访问的存储结构 ① 主存储器:访存时要给出存储器单元地址 ② CPU寄存器:包括通用寄存器和专用寄存器。 ③ I/O接口寄存器:包括数据寄存器和状态寄存器。 ④ 堆栈。 设计指令字的地址码格式时需解决的主要问题: ⑴ 一条指令中需要指明几个地址; ⑵ 应当如何给出地址; ⑶ 地址码应选多长。 1.四地址指令 四地址指令格式: A1:第一源操作数的存储器地址或寄存器地址。 A2:第二源操作数的存储器地址或寄存器地址。 A3:存放操作结果的存储器地址或寄存器地址。 A4:指示下一条要执行指令的地址。 四地址指令的功能: (A1)OP(A2)→A3 A4指示下条指令地址 四地址指令直观明了,程序的执行流向明确,不存在转移指令。但指令长度太长,因此在实际机器中基本不用。 2.三地址指令 程序在执行过程中大多数情况是按指令序列依次执行的,只有在执行转移指令时,程序的执行顺序才被改变。为了压缩指令长度,下一条指令地址采用隐含的方法给出。 通常用一个程序计数器 PC 来跟踪程序的执行并指示将要执行的指令地址。每执行一条指令,PC自动增量,增量值取决于执行指令的长度。 当程序出现转移时,用专门的转移指令将转移地址直接送入PC。 在三地址指令中不明显地指示下条指令地址。 三地址指令格式: A1:第一源操作数的存储器地址或寄存器地址; A2:第二源操作数的存储器地址或寄存器地址; A3:存放操作结果的存储器地址或寄存器地址; 三地址指令功能为: (A1)OP(A2)→A3; PC 指示下条指令地址 三地址指令编程方便,结果不影响运算操作数,但指令长度仍比较长,所以一般在字长较长的大、中型机中使用,而微、小型机中很少使用三个地址均为存储器地址的三地址指令。 3.二地址指令 二地址指令的格式为: A1、A2是操作数所在的存储器地址或寄存器地址。 二地址指令功能为: (A1)OP(A2)→A1 或 (A1)OP(A2)→A2 源地址:仅提供操作数的地址 目的地址:既提供一个操作数,又存放操作结果的地址 二地址指令的意义 源地址中的操作数与目的地址中的操作数

文档评论(0)

独角戏 + 关注
实名认证
文档贡献者

本人有良好思想品德,职业道德和专业知识。

1亿VIP精品文档

相关文档