- 1、本文档共59页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
计算机组成原理(第5章)
第5章 指令系统 5.1 指令系统概述 5.1.1 指令系统简介 5.1.2 指令的格式 5.1.3 指令系统设计概论 5. 2 操作数类型及存储方式 5.2.1 操作数类型 5.2.2 操作数存储方式 5.2.3 数据对齐方式 5.2.4 堆栈存取方式 5.3 指令系统功能设计 5.3.2 指令系统功能集设计 5. 4 寻址方式 5.4.1 常见寻址方式 5.4.2 寻址方式设计 5.5 指令字格式设计 5. 6 指令系统举例5.6.2 Pentium指令系统 ? 庞大的指令系统中,只有算术逻辑运算、数据传送、转移、子程序调用等几十条基本指令才是常使用的,在程序中出现的概率占到80%以上; ▲ 复杂的指令系统带来的问题 ? 计算机的结构也越来越复杂,不仅增加了计算机的研制周期和成本,而且难以保证其正确性,有时还可能降低系统的性能; ? 需要大量硬件支持的复杂指令的利用率却很低,造成了硬件资源的大量浪费。 ? 各种高级语言的语义之间有很大差别;不可能设计出一种能对所有高级语言都能提供很好支持的指令系统。 2)精简指令集计算机RISC(Reduced Instruction Set Computer)的提出。 ? 指令系统越复杂,包含的指令越多,编译时生成目标程序的方法也越多,对最终优化编译造成困难。 ▲ 精简指令系统计算机特点 ? 通过简化指令使计算机的结构更加简单合理,从而提高机器的性能。 ①?指令数目较少,一般都选用使用频度最高的一些简单指令; ②?指令长度固定,指令格式种类少,寻址方式种类少; ③?大多数指令可在一个机器周期内完成; ④?通用寄存器数量多,只有存数/取数指令访问存储器,而其余指令均在寄存器之间进行操作。 ▲ 采用RISC技术 ? 指令系统可以采用速度较快的硬连线逻辑来实现,且更适合于采用指令流水技术,可使指令的执行速度进一步提高; ? 指令数量少,固然使编译工作量加大,但由于指令系统中的指令都是精选的,编译时间少,反过来对编译程序的优化又是有利的; ? CISC和RISC技术都在发展,两者都各有自己的优点和缺点。 ? 结构更适合VLSI、并行处理,更能够提高计算机的性能; ■ 指令如何指定操作数或操作数地址称为寻址方式。 ■ 确定指令系统的寻址方式时,须考虑以下几点: ? 希望指令内所含地址尽可能短; ? 希望能访问尽可能大的存储空间; ? 寻址方法尽可能简单; ? 能够适用于数组、串、表格等复杂数据结构 ■ 操作数的寻址方式主要解决的是操作数存放在指令、寄存器和存储器中的寻址问题。 1. 立即寻址 ? 操作数在指令中;Data=A。 图5.6 OP F1 A 指令 2. 直接寻址 ? 指令直接给出操作数(有效)地址;即EA=A。 图5.7 直接寻址 操作数 存储器 OP F2 A 指令 3. 存储器间接寻址 ? 操作数地址在内存中;即EA =(A)。 图5.8 间接寻址 OP F3 A 指令 A’(EA) 操作数 存储器 4. 寄存器(直接)寻址 ? 寄存器寻址有以下优点: ① CPU寄存器数量远小于内存单元,所以寄存器号比内存地址短,因而寄存器寻址方式指令短; ② 不用访存,指令执行速度快。 OP F4 R 图5.9 寄存器寻址 操作数 寄存器 指令 ? 指令地址码字段给出存放操作数的寄存器编号; 即data=(R)。 5.寄存器间接寻址 ? 操作数地址在指令指定的CPU某个寄存器中;EA=(R); OP F5 R 图5.10 寄存器间接寻址 A’(EA) 寄存器 指令 操作数 存储器 6.相对寻址 ? 操作数地址为程序计数器PC中的内容与位移量A之和,即EA=(PC)+ A。 7.基址寻址 ? 把由指令中给出的地址(位移量)与CPU 中的某个基址寄存器相加而得到实际的操作数地址。 EA=(R)基址+A 8086指令 MOV AL,[SI+1000H] EA 图5.13 8.寄存器变址寻址 ? 操作数地址为变址寄存器中的内容与位移量之和;即EA=(R)变址+A。 ? 变址寻址主要解决程序内部的循环问题;基址寻址则要求基址寄存器的内容能提供整个主存范围的寻址能力;在多道程序运行环境下,实现程序的再定位。 OP F8 R A 9.隐含寻址方式 ? 指令没有明显地给出操作数地址,而在操作码中隐含着操作数地址。如操作数隐含在累加器,堆栈内。 10.其它寻址方式 ? 有的计算机指令系统中还有更复杂的寻址方式,如基址变址寻址、位寻址、块寻址、串寻址等等。 ? 在使用机器时,不仅要了解
文档评论(0)