考研必备:计算机组成原理第5章 指令系统.ppt

考研必备:计算机组成原理第5章 指令系统.ppt

  1. 1、本文档共52页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第5章 指令系统 计算机系统主要由硬件(Hardware)和软件(Software)两部分组成。所谓硬件就是指构成计算机的电子、机械、光学的元件或装置,它们是看得见,摸得着得实体。软件则是为便于用户使用计算机而编写的各种程序,它实际上是由一系列机器指令组成。一台计算机中全部指令的集合称为这台计算机的指令系统,它是软、硬件设计的分界面。 计算机性能与它所设置的指令系统有很大的关系,指令系统反映了计算机的主要属性,而指令系统的设置又与机器的硬件结构密切相关。指令是计算机执行某种操作的命令,而指令系统是一台计算机中所有机器指令的集合。通常性能较好的计算机都设置有功能齐全、通用性强、指令丰富的指令系统,而指令功能的实现需要复杂的硬件结构来支持。 本章要点: 指令格式 操作数的存储方式 寻址方式和范围 指令系统设计 指令系统的发展 5.1 指令系统概述 计算机能解题是由于机器本身存在一种语言,它既能理解人得意图,又能被机器自身识别。机器语言是由一条条语句构成的,每一条语句又能准确表达某种语义。例如它可以命令机器做某种操作,指出参与操作的数或其它信息在什么地方等等。计算机就是连续执行每一条机器指令而实现全自动工作的。人们习惯把每一条机器语言的语句叫机器指令,而又将全部机器指令的集合叫做机器的指令系统。因此机器的指令系统集中反映了机器的功能,是计算机系统中软件与硬件的分界面,如图5-1所示。就目前来看,无论多么复杂、功能多么强大的软件,凡是能够在机器上直接运行的目标程序都是由一系列机器指令组成的。 对于软件设计人员而言,则需使用这些指令编制各种各样的系统软件和应用软件,用这些软件来填补硬件的指令与人们习惯的使用方式之间的语义差距。因此,可以说,指令系统是软件设计人员与硬件设计人员之间的一个主要分界面,也是他们之间互相沟通的一座桥梁。一方面是程序员所能看到的机器的主要属性,另一方面表明计算机具有哪些最基本的硬件功能,也就是说指令系统既为软件设计者提供最低层的程序设计语言,也为硬件设计者提供了最基本的设计依据。在计算机系统的设计过程中,指令系统的设计是非常关键的,不但直接关系着对程序设计的支持程度,也关系着该计算机的硬件结构,必须由软件设计人员和硬件设计人员共同来完成。 5.2 指令格式 计算机的指令格式与机器的字长、存储器的容量及指令的功能都有很大的关系。从便于程序设计、增加基本操作并行性、提高指令功能的角度来看,指令中应包含多种信息。但在有些指令中,由于部分信息可能无用,这将浪费指令所占的存储空间,增加了访存次数,从而影响速度。因此,如何合理、科学地设计指令格式,使指令既能给出足够的信息,又使其长度尽可能地与机器字长相匹配,以节省存储空间,缩短取指时间,提高机器的性能,这是指令格式设计中的一个重要问题。 计算机是通过执行指令来处理各种数据的。为了指出数据的来源、操作结果的去向及所执行的操作,一条指令必须包含下列信息: (1)操作码。它具体说明了操作的性质及功能。一台计算机可能有几十条至几百条指令,每一条指令都有一个相应的操作码,计算机通过识别该操作码来完成不同的操作。 (2)操作数的地址。CPU通过该地址就可以取得所需的操作数。 (3)操作结构的存储地址。把对操作数的处理所产生的结果保存到该地址中,一边再次使用。 4)执行程序时,大多数指令按顺序依次从主存中取出执行,只有在遇到转移指令时,程序的执行顺序才会改变。为了压缩指令的长度,可以用一个程序计数器(Program Counter,PC)存放指令地址。每执行一条指令,PC的指令地址就自动加1(设该指令只占用一个主存单元),指出将要执行的下一条指令地址。当遇到执行转移指令时,则用转移地址修改PC的内容。由于使用了PC,指令中就不必明显地给出下一条将要执行指令的地址。 从上述分析可知,一条指令实际上包括两种信息即操作码和地址码。操作码(Operation Code,OP)用来表示该指令所需要完成的操作,其长度取决于指令系统中的指令条数。地址码用来描述该指令的操作对象,它或者直接给出操作数,或者指出操作数的存储器地址或寄存器地址(即寄存器名)。 5.2.1 操作码 操作码部分指出了计算机要执行什么性质的操作,如进行加法、减法、取数、存数等。不同的指令,其操作码不同,用不同的编码来表示,每一个编码表示一条指令。计算机要为每条指令分配一个确定的操作码。例如:操作码0001可以规定为表示加法操作;操作码0010可以规定为表示加法操作等等。每个操作码代表的功能均由CPU上相应的电路来实现,因此机器就能执行操作码所要表示的操作。操作码的长度n(即操作码的位数)决定了指令系统中完成不同操作的指令条数,如某机器的操作码长度为n,则不同指令的条数最多为2n。n越大,则指令条数越多,功能越

文档评论(0)

荔力 + 关注
实名认证
内容提供者

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

1亿VIP精品文档

相关文档