第二章指令系统.ppt
- 文档编号:1312756
- 上传时间:2022-10-20
- 格式:PPT
- 页数:90
- 大小:4.65MB
第二章指令系统.ppt
《第二章指令系统.ppt》由会员分享,可在线阅读,更多相关《第二章指令系统.ppt(90页珍藏版)》请在冰豆网上搜索。
第二章指令系统,上海大学计算机学院,在机器上直接运行的程序是由指令组成的指令系统是软件和硬件之间的一个主要分界面,也是它们之间相互沟通的一座桥梁硬件设计人员采用各种手段实现指令系统,而软件设计人员则使用这些指令系统编写系统软件和应用软件,用这些软件来填补指令系统与人们习惯的使用方式之间的语义差距指令系统的设计必须由软件设计人员和硬件设计人员共同完成指令系统发展相当缓慢,需要用软件来填补的东西就越来越多,本章主要内容,2.1数据表示2.2寻址方式(不考)2.3指令格式设计2.4指令功能设计,2.1数据表示与数据类型,数据类型:
文件、图、表、树、队列、阵列、链表、栈、向量、串、整数、布尔数、字符等计算机系统结构研究的首要问题:
哪些数据类型用硬件实现,哪些数据类型用软件实现及其实现方法数据表示的定义:
数据表示是指计算机硬件能够直接识别,可以被指令系统直接调用的那些数据类型例如:
定点、逻辑、浮点、十进制、字符、字符串、堆栈和向量等,数据结构:
面向系统软件和应用领域所需处理的数据类型除了数据表示之外的所有数据类型,都是数据结构要研究的内容数据表示和数据结构是数据类型的子集确定哪些数据类型用数据表示实现,哪些数据类型用数据结构实现,是软件与硬件的取舍问题,确定数据表示子集是计算机系统设计人员要解决的难题之一。
从原理上讲,计算机系统结构只要有了最简单的数据表示,就能够用软件实现其他各种数据类型确定数据表示的原则缩短程序的运行时间减少CPU与主存储器之间的通信量数据表示的通用性和利用率数据表示在不断发展例如:
矩阵、树、图、表等已经开始用于数据表示中将复杂的数据类型用数据表示实现,系统的硬件成本较高,例1:
计算C=A+B,A、B、C均为200200的矩阵,分析在一般的计算机上和在向量计算机上运算的区别解:
如果在没有向量数据表示的计算机上实现,一般需要6条指令,其中有4条指令要循环4万次,因此,CPU与主存的通信量:
取指令:
2+440,000条读或写数据:
340,000条共要访问主存:
740,000次以上如果有向量数据表示,只需一条指令减少访问主存(取指令)次数440,000次,复杂数据类型:
硬件实现,代价大软件实现,效率低软硬件结合方式效果好例如:
用字节编址和字节运算指令支持字符串数据表示;用变址寻址方式支持向量数据表示设计计算机系统时,对于数据类型:
确定哪些数据类型全部用硬件实现,即数据表示确定哪些数据类型用软件实现,即数据结构确定哪些数据类型由软硬件共同实现,并确定软硬比例关系,本章主要内容,2.1数据表示2.2寻址技术2.3指令格式优化设计2.4指令格式功能设计,2.2寻址技术,寻找操作数及其地址的技术称为寻址技术编址方式寻址方式定位方式重点:
寻址方式的选择,2.2.1编址方式,对各种存储设备进行编码的方法1.编址单位常用的编址单位:
字节编址(多数)、字编址、位编址、块编址等,2.零地址空间个数,三个零地址空间:
通用寄存器、主存储器、输入输出设备独立编址两个零地址空间:
主存储器与输入输出设备统一编址一个零地址空间:
最低端是通用寄存器,最高端是输入输出设备,中间为主存储器,寻找操作数及数据存放地址的方法1.寻址方式的设计思想立即数寻址方式用于数据比较短,且为源操作数的场合面向寄存器的寻址方式OPCROPCR,ROPCR,R,ROPCR,M,2.2.2寻址方式,面向主存储器的寻址方式:
直接寻址、间接寻址、变址寻址、相对寻址、基值寻址、自动编址.OPCMOPCM,MOPCM,M,M面向堆栈的寻址方式:
OPC;运算型指令OPCM;数据传送型指令,2.寄存器寻址主要优点:
指令字长短,指令执行速度快,支持向量和矩阵等运算主要缺点:
不利于优化编译,现场切换困难,硬件复杂3.堆栈寻址方式主要优点:
支持高级语言,有利与编译程序,节省存储空间,支持程序的嵌套和递归调用,支持中断处理主要缺点:
运算速度比较低,栈顶部分设计成一个高速的寄存器堆,程序的主存物理地址在什么时间确定?
采用什么方式实现程序需要定位的主要原因程序的独立性程序的模块化设计数据结构在程序运行过程中,其大小往往是变化的有些程序本身很大,大于分配给它的主存物理空间,2.2.3定位方式,主要定位方式,直接定位方式:
在程序装入主存储器之前,程序中的指令和数据的主存物理地址就已经确定了的称为直接定位方式静态定位:
在程序装入主存储器的过程中随机进行地址变换,确定指令和数据的主存物理地址的称为静态定位方式动态定位:
在程序执行过程中,当访问到相应的指令或数据时才进行地址变换,确定指令和数据的主存物理地址的称为动态定位方式,本章主要内容,2.1数据表示2.2寻址技术(不考)2.3指令格式设计2.4指令功能设计,.3指令格式设计,主要目标:
节省程序的存储空间指令格式尽量规整,便于译码2.3.1指令的组成2.3.2操作码的设计2.3.3地址码的设计,2.3.1指令的组成,操作码主要包括两部分内容:
操作种类:
加、减、乘、除、数据传送、移位、转移、输入输出、程序控制、处理机控制等操作数描述:
数据的类型:
定点数、浮点数、复数、字符、字符串、逻辑数、向量进位制:
2进制、10进制、16进制数据字长:
字、半字、双字、字节,2.3.2操作码的设计,操作码的三种编码方法:
固定长度Huffman编码扩展编码,1.固定长度编码,定长定域:
n种指令,操作码位数IBM公司的大中型机:
最左边8位为操作码Intel公司的Intanium处理机:
14位定长操作码主要优点:
规整译码简单主要缺点:
浪费信息量(操作码的总长位数增加),优化操作码编码的目的:
节省程序存储空间例如:
Burroughs公司的B-1700机,2.Huffman编码基本概念,1952年,哈夫曼提出电报报文编码方式,减少报文长度,缩短报文传送时间。
将出现概率最大的事件用最少的位来表示,而概率较小的事件用较多的位表示,达到平均编码位数缩短的目的。
哈夫曼压缩可用于程序、存储空间、图像、声音等压缩。
2.Huffman编码,例3.假设一台模型计算机共有7种不同的操作码,如果采用固定长操作码需要3位。
已知各种操作码在程序中出现的概率如下表,计算采用Huffman编码法的操作码平均长度,并计算固定长操作码和Huffman操作码的信息冗余量,利用Huffman树进行操作码编码把所有指令按照操作码在程序中出现的概率大小,自左向右顺序排列选取两个概率最小的节点合并成一个概率值是二者之和的新节点,并把这个新节点与其他还没有合并的节点一起形成一个新的节点集合在新的节点集合中选取两个概率最小的节点进行合并,如此继续执行下去,直至全部节点合并完毕,最后得到的根节点的概率值为1每个新节点都有两个分支,分别用带有箭头的线表示,并分别用一位代码“0”和“1”标注从根节点开始,延箭头所指方向寻找到达属于该指令概率节点的最短路径,把沿线所经过的代码排列起来就得到了这条指令的操作码编码,利用Huffman树进行操作码编码,利用Huffman树进行操作码编码,利用Huffman树进行操作码编码,利用Huffman树进行操作码编码,利用Huffman树进行操作码编码,利用Huffman树进行操作码编码,利用Huffman树进行操作码编码,利用Huffman树进行操作码编码,Huffman编码操作码,Huffman操作码的主要缺点:
操作码长度很不规整,硬件译码困难与地址码共同组成固定长的指令比较困难扩展编码法:
由固定长操作码与Huffman编码法相结合形成例4.将例3改为1-2-3-5扩展编码法及2-4等长扩展编码法,分别求操作码最短平均长度及其信息冗余量,3.扩展编码法,例3.一个处理机共有10条指令I1到I10,各指令在程序中出现的概率如下:
0.25,0.20,0.15,0.10,0.08,0.08,0.05,0.04,0.03,0.02采用Huffman编码编写这10条指令的操作码,并计算操作码的平均长度和信息冗余量分别采用2/8和3/7扩展编码法编写这10条指令的操作码,并计算平均长度和信息冗余量,例4.若某机器指令系统要求:
三地址指令有4条,单地址指令有255条,零地址指令有16条。
假设指令字长为12位,每个地址码长为3位,能否以扩展操作码的方式为其编码?
若其中单地址指令为254条呢?
说明其理由,例5.某机器指令字长16位,设有单地址指令和双地址指令两类,若每个地址字段为6位,且双地址指令有x条,问单地址指令最多有多少条?
.3指令格式的优化设计,2.3.1指令的组成2.3.2操作码的优化设计2.3.3地址码的优化设计,地址码个数的选择地址码个数通常有3个、2个、1个及0个4种情况评价指令中地址码个数应该取多少的标准主要有两个:
程序存储容量,包括操作码和地址码程序执行速度,以程序执行过程中访问主存的信息量代表通过一个典型例子来分析,.3.3地址码的优化设计,关于地址码个数的结论(记住结论即可)对于一般商用处理机,采用多寄存器结构的二地址指令是最理想的如果强调硬件结构简单,并且以连续运算(如求累加和等)为主,宜采用一地址结构对于以向量、矩阵运算为主的处理机,最好采用三地址结构。
部分RISC处理机也采用三地址指令对于解决递归问题为主的处理机,宜采用零地址结构,编程容易,节省程序存储量,2.缩短地址码长度的方法,基本思想:
用一个短地址码表示一个大地址空间用间址寻址方式缩短地址码长度方法:
在主存储器的低端开辟一个专门存放间接地址的区域用变址寻址方式缩短地址码长度变址寻址方式中的地址偏移量比较短用寄存器间接寻址方式缩短地址码长度例如:
16个间址寄存器,用4位地址码就能表示很长的逻辑地址空间,本章主要内容,2.1数据表示2.2寻址技术2.3指令格式优化设计2.4指令系统功能设计,2.4指令系统的功能设计,2.4.1基本指令系统通用计算机必须有5类基本指令2.4.2指令系统的性能完整性、规整性、高效率和兼容性2.4.3指令系统的优化设计CISC、RISC、VLIW,2.4.1基本指令系统,通用计算机必须有5类基本指令数据传送类指令运算类指令程序控制指令输入输出指令处理机控制和调试指令,1.数据传送类指令,目标:
在相同或不同的数据存储设备之间传送数据三个因素:
数据存储设备的种类:
通用寄存器,主存储器,堆栈数据传送的单位:
字、字节、数据块采用的寻址方式:
例如:
把寻址方式放在地址码中,以字为传送单位的指令有如下8种,在上述因素进行组合式,必须考虑指令的执行时间、使用频度、硬件实现的复杂程度等多方面的情况分析哪些指令是必须设置的,哪些指令是可有可无的(也可以用软件的一段子程序来实现),哪些是不合理的或不应该设置的通过模拟实验和统计分析,最终确定出合理的运算类指令,4.输入输出指令,较为简单,采用单一的直接寻址方式,数据字长以单字节为单位主要的输入输出操作:
启动设备、停止设备、测试设备、对设备进行控制及数据的输入或输出操作在多用户或多任务环境下,输入输出指令属于特权指令,操作系统对设备进行统一管理,5.处理机控制和调试指令,处理机状态切换指令,处理机有两个状态(管态和用户态)硬件和软件调试指令硬件调试指令:
开关状态读取等软件调试指令:
断点设置、跟踪、自陷指令等,2.4.2指令系统的性能,完整性、规整性、高效率和兼容性完整性是指应该具备的5种基本指令规整性包括对称性和均匀性对称性:
各种与指令系统有关的数据存储设备的使用,操作码的设置均需对称。
如:
所有通用寄存器同等对待。
操作码的设置等均要对称,如AB与BA均匀性:
不同的数据类型、字长、存储设备、操作种类要设置相同的指令。
如:
某机器有5种数据表示,4种字长,8种数据存储设备,那么设计加法指令:
548=160种,如果再考虑对称和寻址方式,指令种类还要增加很多倍,高效率:
指令的执行速度要快指令的使用频度要高各类指令要有一定的比例如:
运算类指令占40%以上,数据传送类指令占30%以上兼容性:
兼容性是计算机系统的生命力所在大量的系统软件和应用
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 第二 指令系统