- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第四章 指令系统Instruction System 4.1 指令系统的发展与性能要求 什么是指令? 高级语言程序、汇编语言程序,都需编译或翻译程序转换为CPU识别的程序,即指令序列。 可被控制器识别的指令称为机器指令。 另外两种指令 微指令 一条机器指令翻译成一串微指令。 一条微指令代表发出的一组控制信号。 微程序存储于CPU内的控制存储器。 属于硬件。 4.1 指令系统的发展与性能要求 宏指令 特定的一串机器指令可完成稍复杂的运算,这串机器指令用一条宏指令表示。 属于软件。 什么是指令系统? 所有机器指令的集合,称指令系统。 指令系统就是指令集(Instruction Set)。 决定硬件设计,是软件设计的基础,影响机器的适用范围。 4.1 指令系统的发展与性能要求 指令系统的发展 指令系统的规模 50年代,十几或几十条指令。 60年代,增加乘除法、浮点运算、十进制运算、字符处理指令,达到一二百条指令。 70年代,几百条,复杂指令系统的计算机(CISC,Complex Instuction Set Computer) 70年代,出现精简指令系统计算机(RISC,Reduced Instuction Set Computer ) 系列计算机 奔腾386,奔腾486,奔腾586 4.1 指令系统的发展与性能要求 指令系统 决定计算机的基本功能,是计算机设计的核心问题。 怎样确定指令系统? 要求 完备性 类型丰富、功能齐全、使用方便; 乘除、浮点运算可由基本指令实现,也可用硬件实现。 有效性 占用存储少,执行速度快。 4.1 指令系统的发展与性能要求 要求 规整性 对称性 任何指令平等对待寄存器和存储器 匀齐性 一种操作性质的指令可支持各种数据类型 指令格式和数据格式的一致性 例如,指令字和数据字都是字节的倍数。 兼容性 系列机支持“向上兼容”,高档机包含低档机的全部指令。 4.1 指令系统的发展与性能要求 程序设计与指令集的关系 程序设计把待求解问题变换成计算机可识别的一串指令或语句。 程序用计算机语言表达。 计算机语言 高级语言(算法语言) C、Fortran、Java、Pascal等; 方便描述求解过程,执行性能依赖编译程序; 与指令系统无关,故可移植。 4.1 指令系统的发展与性能要求 计算机语言 低级语言 机器语言(二进制语言)、汇编语言(符号语言); 面向机器编写,不可移植; 可最大程度挖掘机器功能。 高级语言提供与汇编语言的调用接口。 4.2 指令格式 指令字 表示一条指令的二进制位串。 简称指令。 指令格式 操作码 表示指令的操作特征与功能; 地址码 参与操作的操作数的地址。 4.2 指令格式 操作码 表示操作的性质。 例,加法、减法、乘法、取数、存数等。 控制器解释操作码,发出相应的控制信号。 操作码字段的长度 取决于指令系统的规模。 例,如仅有8条指令,该字段占用3位就够了。 n位操作码字段,最多可表示2^n条不同指令。 4.2 指令格式 地址码 一般的运算操作,涉及被操作数、操作数、操作结果。 按操作数个数分, 三地址指令 二地址指令 一地址指令 零地址指令 注意:这里不表示指令字是等长的! A反映ALU中哪个寄存器,也可反映哪个存储单元。 4.2 指令格式 地址码 零地址指令 例,停机指令(halt)。 一地址指令(单操作数指令) 隐含地以ALU中的累加器AC的内容做另一个操作数,结果仍送AC。 (AC) OP (A)→ AC 也有的确是一个操作数的情况。 OP (A)→ A 例:移位指令 4.2 指令格式 地址码 二地址指令(双操作数指令) 第一个地址码兼做操作结果的地址。 (A1) OP (A2)→ A1 三地址指令 (A1) OP (A2)→ A3 4.2 指令格式 地址码 对于二地址指令 存储器-存储器(SS,Storage - Storage)指令 三次访问主存,费时! 寄存器-寄存器(RR,Register - Register)指令 不访问主存,速度快! 寄存器-存储器(RS ,Register - Storage)指令 既访问主存,又访问寄存器。 4.2 指令格式 指令字长度 操作码字段和操作数字段的总位数。 机器字长 计算机能直接处理的二进制位数,一般是ALU位数。 一般等于存储器字长,即一次访存得到的位数。 4.2 指令格式 指令字长度 按长度分, 单字长指令 指令字长度等于机器字长度。 半字长指令 双字长指令 例 IBM370系列中,有16位(半字)、32位、48位等指令; Pentium系列中,有8位、16位、32位和64位指令。 4.2 指令格式 指令助记符 不同机器的指令助记符不完全一样! 4.2 指令格式 指令格式举例 8位微
文档评论(0)