- 1、本文档共531页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
计算机组成原理(第二版)完教学课件完整版电子讲义计算机组成原理(第二版)完教学课件完整版电子讲义计算机组成原理(第二版)完教学课件完整版电子讲义
8.2.1 机器指令格式 机器指令格式,是机器指令用二进制代码表示的结构形式,通常由操作码字段和地址码字段组成。 一条指令的结构可用如下形式来表示: 操作码字段表征指令的操作特性与功能 地址码字段通常指定参与操作的操作数的地址 操作码字段 地址码字段 8.2.1 机器指令格式 机器指令格式设计的主要目标 节省程序的存储空间。 指令格式要尽量规整,减少硬件译码的复杂程度。 优化后不能降低指令的执行速度。 8.2.1 机器指令格式 机器指令符号表示法(Symbol Representation) 操作码被缩写成助记符(Memonic)来表示。 例如: 操作数也可用符号表示。例如,指令: ADD R, Y 它将存储器Y位置中的数据值加到寄存器R内容上 注意,操作针对位置的内容进行,而非对它的地址 ADD:加 DIV:除 SUB:减 LOAD:由存储器装入 MPY:乘 STOR:存到存储器 操作码(Opcode) 指明即将完成的操作 源操作数和目的操作数的引用方式, 通常隐式指明下一个指令的引用方式。 操作码指定的操作类型: 算术和逻辑运算 在两个寄存器、寄存器和存储器或两个存储器位置之间传输数据; I/O操作 控制操作 8.2.2 操作码设计 不同的指令用操作码字段的不同编码来表示,每一种编码代表一种指令。 CPU中的专门电路用来解释每个操作码,因此机器就能执行操作码所表示的操作。 组成操作码字段的位数一般取决于计算机指令系统的规模。一般来说,一个包含n位的操作码最多能够表示2n条指令。 8.2.2 操作码设计 对于一个机器的指令系统,在指令字中操作码字段和地址码字段长度通常是固定的。 在单片机中,由于指令字较短,为了充分利用指令字长度,指令字的操作码字段和地址码字段是不固定的,即不同类型的指令有不同的划分,以便尽可能用较短的指令字长来表示越来越多的操作种类,并在越来越大的存储空间中寻址。 8.2.2 操作码设计 固定长度操作码 一般处理机的指令条数通常为几十条至几百条,用一个字节(8位)表示,非常规整,硬件译码也很简单。 IBM公司生产的大中型计算机中,许多RISC计算机都采用这种编码方法。 主要缺点是:浪费了许多信息量,即操作码的总长度增加。典型情况下,操作码的总长度要增加40%左右。 8.2.2 操作码设计 Huffman编码法 1952年由Huffman首先提出的一种编码方法 必须先知道各种指令在程序中出现的概率,通常可以通过对已有典型程序进行统计得到 能够使操作码的平均长度最短,信息的冗余量最小 缺点:所形成的操作码很不规整,既不利于硬件的译码,也不利于软件的编译。另外,它也很难与地址码配合,形成有规则长度的指令编码 8.2.2 操作码设计 扩展编码法 许多计算机中采用的一种折中方法 由固定长操作码与Huffman编码法相结合形成的 实现方式,通过下一小节的例8-1加以说明 8.2.2 操作码设计 一条指令需要的最大地址数是多少? 算术和逻辑指令要求的操作数最多。 指令一般需要含有4个地址段:两个操作数,一个结果,以及下一指令地址。 实际上,四地址的指令极少。大多数CPU使用的是以下一指令地址为隐含的(由程序计数器得到)单地址、双地址或三地址的变体。 8.2.3 地址码设计 8.2.3 地址码设计 A3 A2 A1 A4 A3 操作码 二地址指令 三地址指令 一地址指令 零地址指令 A2 A1 操作码 四地址指令 A2 A1 操作码 A1 操作码 操作码 零地址指令的指令中只有操作码,而没有地址码。 不需要地址码或者有一个或两个隐含地址。 基本格式: OP 例: NOP 空操作指令 HLT 停机指令 8.2.3 地址码设计 一地址指令常称单操作数指令。 可有一个或两个操作数。当有两个操作数时,一个由指令指明地址,另一个隐含地址为堆栈或累加器。 基本格式:OP A 动作:(AC) OP (A) → AC 例如: INC OPD 单操作数指令 MUL OPD 双操作数指令 PUSH OPS 双操作数指令 8.2.3 地址码设计 二地址指令常称双操作数指令,有两个地址码字段A1和A2,分别指明参与操作的两个数在内存中或运算器通用寄存器的地址。 A1兼做存放操作结果的地址。 基本格式:OP A1,A2 动作:(A1) OP (A2) → A1 例如: ADD OPD,OPS
您可能关注的文档
- 通信原理完整版课件全套ppt教学教程电子讲义电子教案.ppt
- 物联网导论完整版课件全套ppt教学教程最全整套电子讲义电子讲义(最新).ppt
- 网络设计完整版ppt课件全套电子讲义整套教学教程(最新).ppt
- 大型数据库管理系统(Oracle)应用开发全套课件.ppt
- 第11章-ASP应用程序基础(完成)ppt课件(全).ppt
- 模块四---程序设计基础(46).pptx
- 单片机原理完整版课件全套ppt教学教程最全整套电子教案电子讲义.ppt
- 数据库原理及应用(MySQL版)完教学课件完整版电子讲义.pptx
- Java程序设计项目案例化教程ppt课件完整版.pptx
- 互联网金融--教学课件.pptx
文档评论(0)