[理学]第5章 指令系统.ppt

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
[理学]第5章 指令系统

第5章 指令系统 5.1 指令系统的发展 5.2 指令格式 5.3 数据表示 5.4 寻址方式(编址方式) 5.5 指令类型 5.6 指令系统的兼容性 5.7 精简指令系统计算机(RISC)和复杂指令系统计算机(CISC) 5.9 机器语言、汇编语言和高级语言 教学目标 了解指令系统的发展与性能要求 掌握指令格式和寻址方式 教学重点 指令格式 扩展操作码 寻址方式  概 述 指令:是指示计算机某种操作的命令。 微指令,机器指令,宏指令 指令系统:一台计算机中所有机器指令的集合。 它是机器硬件设计的依据,也是软件设计的基础。 它决定了一台计算机硬件的主要性能和基本功能。是硬件和软件间的界面。 系列计算机:有共同的指令集,相同的基本体系结构。 CISC和RISC 计算机的指令系统的发展与性能 指令系统决定了计算机的基本功能,指令系统的设计是计算机系统设计的一个核心问题。它不仅与计算机的硬件设计紧密相关,而且直接影响到系统软件设计的难易程度。 完善的计算机的指令系统应具备: 1、完备性:一台计算机中最基本的、必不可少的指令构成了指令系统的完备性。 2、有效性:指利用该指令系统所提供的指令编制的程序能够产生高效率。高效率主要表现在空间和时间方面,即占用存储空间小、执行速度快。 3、规整性:指令操作的对称性和匀齐性,指令格式与数据格式的一致性。 (1)对称性:在指令系统中,所有寄存器和存储单元都可同等对待,这对简化程序设计,提高程序的可读性非常有用。 (2)匀齐性:是指一种操作性质的指令可以支持各种数据类型。 (3)指令的格式与数据格式的一致性:指令长度与数据长度有一定关系,以方便存取和处理。 4、兼容性:兼容性一般是指计算机的体系结构设计基本相同,机器之间具有相同的基本结构、数据表示和共同的基本指令集合。 一个完善的指令系统应满足: 1.完备性:指令丰富,功能齐全,使用方便。 2.有效性:程序占空间小,执行速度快。 3.规整性:对称性,匀齐性,指令格式和数据格式的一致性。 4.兼容性: “向上兼容”----系列机中低档机上运行的软件可以在高档机上运行。 计算机语言与硬件结构的关系 高级语言的语句和用法与具体机器的指令系统无关; 低级语言分机器语言和汇编语言,他们和具体机器的指令系统密切相关。 汇编语言与硬件的关系密切,编写的程序紧凑、占内存小、速度快,特别适合与编写经常与硬件打交道的系统软件;而高级语言不涉及机器的硬件结构,通用性强、编写程序容易,特别适合与编写与硬件没有直接关系的应用软件。 5.2.1指令操作码与地址码 (1/9) 两个字段:操作码字段+操作数地址字段: 1.操作码 操作码是指明指令操作性质的命令码。它提供指令的操作控制信息。 (1)每条指令都要求它的操作码必须是独一无二的位组合。 (2)指令系统中指令的个数N与操作码的位数n,必须满足关系式: N≤2n 2.操作数地址码 (1)地址码:用来描述该指令的操作对象。 (2)指令字长=操作码的位数+(操作数地址个数)*(操作数地址码位数) 5.2.1指令操作码与地址码 (2/9) 一、指令格式 1.零地址指令格式 这是一种没有操作数地址部分的指令格式。 这种指令有两种可能: (1)无需任何操作数。如空操作指令,停机指令等。 (2)所需的操作数是默认的:堆栈。 5.2.1指令操作码与地址码 (3/9) A、堆栈的概念 (a)是若干个存储单元(或寄存器)的有序集合,它顺序地存放一组元素。 (b)数据的存取都只能在栈顶单元内进行,即数据的进栈与出栈都只能经过栈顶单元这个“出入口”。 (c)堆栈中的数据采用“先进后出”或“后进先出”的存取工作方式。 B、?堆栈结构在计算机中的作用 (a)具有堆栈结构的机器使用零地址指令,这不仅合指令长度短,指令结构简单,机器硬件简化。 (b)实现程序调用,子程序嵌套调用和递归调用。 (c)对于“中断”技术,堆栈更是不可缺少的,保存“断点”和“现场”。 5.2.1指令操作码与地址码 (4/9) C、堆栈的操作 设数据进栈方向为从高地址向低地址发展,当向堆栈压入数据时,SP的内容先自动递减而指向一个新的空栈顶单元,再把数据写入此栈顶单元;当数据弹出堆栈时,立即读出SP所指向的栈顶单元内容,再把SP内容自动递增而指向新的栈顶位置。即 PUSH X;(SP)-1?SP (X)?(SP) POP

文档评论(0)

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

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

1亿VIP精品文档

相关文档