欢迎来到天天文库
浏览记录
ID:58657019
大小:1.01 MB
页数:104页
时间:2020-10-05
《计算机系统组成电子教案(第4章)ppt课件.ppt》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、东南大学计算机学院主讲教师:徐造林计算机系统组成第4章指令系统●计算机指令指令:就是要计算机执行某种操作的命令;有微指令、机器指令和宏指令之分。●计算机能执行的机器指令全体称为该机的指令系统指令系统是软件编程的出发点和硬件设计的依据,它衡量机器硬件的功能,反映硬件对软件支持的程度。4.1指令系统概述4.1.1指令系统简介指令系统主要是为计算机应用、编译程序和操作系统提供支持。指令系统中指令的设计,需要从性能提高和带来的成本增加两个方面考虑。1.指令系统组成◆两种类型的指令(1)非特权指令:这类指令主要供用户使
2、用,又可分为功能性指令和非功能性指令两种。(2)特权指令:主要供系统程序员使用,一般不允许用户使用。其中包括I/O指令、停机等待指令、存储管理及保护指令、控制系统状态指令、诊断指令等。2.对指令系统性能的要求完备性:指令系统应功能齐全,给用户带来方便。规整性:指令系统的正交性、均匀性、对称性。兼容性:不同机种之间具有相同的基本结构和共同的基本指令集,目的是给软件资源的重复利用带来方便。可扩充性:指令系统中要保留一定的指令字空间,以便在需要时进行指令系统的功能扩充。4.1.2指令的格式◆指令一般的格式如下:2.
3、地址码地址码指出指令中操作数所在的存储器地址或寄存器地址。1.操作码操作码指出指令应该执行什么性质的操作和具有何种功能;n位操作码字段的指令系统最多能够表示2n条指令。操作码OP地址码A◆按指令包含的地址的个数可分:1、三地址指令执行(A1)OP(A2)→A3OPA1A2A3执行(A1)OP(A2)→A22、二地址指令OPA1A2有两种可能:一是无需任何操作数,如空操作指令、停机指令等。二是所需的操作数地址是默认的。4、零地址指令OP3.单地址指令执行(A1)OP(AC)→ACOPA1◆指令字长度1.指令长度应
4、为存储器基本字长的整数倍2.指令字长应尽量短指令短,可减少所需存储量和加快运行速度,但不能为了使指令短而影响指令系统的完备性和规整性。计算机中CPU能直接处理的二进制的位数称为机器字长;指令字长度:一个指令字包含的所有二进制代码的位数。有等长指令字结构和变长指令字结构。◆指令字长度选取原则◆指令助记符指令类型指令助记符二进制操作码加法ADD001减法SUB010传送MOV011跳转JMP100存储ST101读数LD110表4.1常用指令助记符4.1.3指令系统设计概论任务是确定所有机器指令的格式、类型、操作以
5、及对操作数的访问方式。出发点是提高指令系统的性能/价格比。1.指令系统设计的基本思路基本设计思想:(1)确定计算机系统中的基本操作(包括操作系统和高级语言的)是由硬件实现还是由软件实现;(2)按照尽量缩短平均码长、方便译码与执行的原则,设计指令字格式。◆功能设计和指令格式设计基本功能设计:确定指令系统包含哪些基本操作;优化功能设计:从对目标程序、操作系统、高级语言的支持角度,确定哪些常用的、相对复杂的操作(指令串)可作为指令系统包含的操作(指令);指令格式设计:设计出平均码长较短、便于译码和执行的指令字;规
6、整和优化设计:形成长度规整的、信息冗余较小的指令字。指令所占存储空间是否尽可能小;表现在指令中代码密度是否高、信息冗余量是否少;2.衡量指令系统性能的指标指令代码对应用需求的效率是否高,表现在非特权指令中功能性指令所占比例是否高、指令中操作数的访问范围满足应用需求的概率是否大、对操作系统和编译程序的支持程度是否高;指令的译码速度、执行速度是否快。4.2操作数类型及存储方式4.2.1操作数类型数值型数据;字符;地址;逻辑数据。◆操作数类型在指令中的表示指令中增加一些二进制位标识;可选择存储时标识或处理时标识。
7、◆操作数的4种类型标识方法OPDF1A1DF2A2(a)每个操作数标识OPDFA1A2(b)所有操作数共一个标识图4.1二地址指令数据类型表示方法通常将操作码与数据类型标识合并成新的操作码。4.2.2操作数存储方式操作数可以存储在指令、寄存器、堆栈和存储器中;数据存储方式有大端(Big-Endian)和小端(Little-Endian)两种。图4.2数据在存储器中的两种存放方式数据存储采用小端存储方式的处理机有Intel80x86/Pentium,DECVAX,DECAlpha等。4.2.3数据对齐方式操
8、作数应存储在存储器空间阵列的同一行;信息按整数边界存储原则:数据长度为2n个字节,则该数据在存储器中最小存储地址的最低n位应为0。图4.3数据的边界对齐4.2.4堆栈存取方式◆堆栈是一种按特定顺序访问的存储区;其特点是后进先出(LIFO)或先进后出(FILO)。◆堆栈存取方式堆栈最底部存放数据的位置是固定不变的,该位置称为栈底;堆栈中存放
此文档下载收益归作者所有