第一章计算机系统结构的基本概念1、理解公式:MIPS=FzIPC,说明MIPS、Fz、IPC的含义?MIPS:每秒百万条指令数;FZ:处理机的工作主频(M为单位);IPC:每个时钟周期平均执行的指令条数。2、Fz和IPC的提高主要依靠什么?提高IPC:依靠先进系统结构;提高Fz:缩短门电路延迟,依靠技术进步。3、目前先进体系结构和技术进步哪个对计算机性能影响更大?先进系统结构对微处理器性能的贡献是单纯技术进步的5倍。4、从不同角度所看到的计算机系统的属性是不同的,对不对?对;从不同角度所看到的计算机系统的属性是不同的。5、透明性的判断定义:本来存在的事物或属性,从某种角度看似乎不存在。6、理解系统结构的概念定义一:程序员所看到的计算机系统的属性,即概念性结构和功能特性。定义二:计算机系统由软件、硬件和固件组成,它们在功能上是同等的。同一种功能可以用硬件实现,也可以用软件或固件实现。计算机系统结构研究的是软硬件功能分配和对软硬件界面的确定。7、系列机有相同的体系结构,对不对?对。8、计算机系统结构、组成和实现计算机组成:指计算机系统结构的逻辑实现。计算机实现:指计算机组成的物理实现。三者各自包含不同的内容,但又有着紧密的联系。一种系统结构可以有多种组成,同样,一种组成可以有多种物理实现。9、系统结构的3种分类方法1弗林(Flynn)分类法2冯氏分类法3汉德勒(Händler)分类法10、学会计算加速比11、学会使用cpu性能公式CPU的执行时间取决于三个要素:时钟频率f(或时钟周期t);每条指令所花的时钟周期数CPI;指令条数IC;时间改进前整个任务的执行可改进部分占用的时间eF时间改进后改进部分的执行时间改进前改进部分的执行eS)1(*SeFeFeTTonSeFeFeTToSnn)1(1)(*)()(tCPIICCPUTCPU时钟周期长时钟周期数时间)()()(fCPIICCPUTCPU频率时钟周期数时间ICCPUCPI时钟周期数目12、访问的局部性分为哪2种,具体指的是什么?时间上的局部性:指最近访问过的代码是不久将被访问的代码。空间上的局部性:指那些地址上相邻近的代码可能会被一起访问。13、计算机的发展趋势是硬件实现的比例越来越高,硬件所占的成本越来越低,软硬件的界面在上升。14、现代的计算机系统通常是由下往上、由上往下、还是由中间开始设计的?这个中间是指什么?由中间开始设计;“中间”指:多级层次结构的某两级的界面。15、评价一个计算机系统结构好坏的标准主要是性能和成本这两个指标。16、衡量机器性能的唯一固定而且可靠的标准就是真正执行程序的时间。17、MIPS的计算,MIPS可能和性能相反MIPS=FzIPC;18、会计算等效指令执行时间、等效指令速度(MIPS,MFLOPS)19、MFLOPS不能体现机器的整体性能,例如运行编译程序。20、将一个任务的执行时间标准化为一个参考机器的执行时间,称为平均标准化时间;可以用算术平均和几何平均来表示。21、兼容机和系列机的区别是什么?系列机是同一个厂家生产的具有相同系统结构,不同的组成和实现技术的一系列不同型号的机器。兼容机是不同厂家生产的具有相同系统结构,不同的组成和实现技术的性价比不同的机器。22、几种兼容的概念。向上(下)兼容:指按某档机器编制的程序,不加修改就能运行于比它高(低)档的机器。向前(后)兼容:指按某个时期投入市场的某种型号机器编制的程序,不加修改就能运行于在它之前(后)投入市场的机器。23、解决软件可移植性的3种方法是什么?采用系列机方法;采用模拟与仿真方法;采用统一的高级语言方法(努力目标)。第二章指令系统1、指令系统的概念,指令系统与软件之间存在语义差距,目前这个差距越来越大指令系统是计算机所有命令的集合,是软硬件的之间的主要分界面。主要研究指令格式、数据表示和寻址方式。2、数据表示和数据结构的区别,确定数据表示的原则1)数据表示:指计算机硬件能够直接识别,可以被指令系统直接调用的那些数据类型。(由硬件实现的数据类型)。2)数据结构:面向计算机系统软件、面向应用领域所需处理的数据类型。由软件实现的数据类型。n1iii)Weight(Time等效指令执行时间Tn1iiMIPSWeight1等效指令速度MIPS)Weight(CPI等效CPIn1iii3)确定数据表示的原则1.缩短程序的运行时间。2.减少CPU与主存储器之间的通信量。3.数据表示的通用性和利用率。3、会计算浮点数的表数范围、表数精度和表数效率表数范围:1)尾数为原码纯小数,阶码用移码整数时,规格化浮点数N的表数范围:2)尾数为补码,正数区间的表数范围与采用原码时相同,负数区间的表数范围为:表数精度:(规格化)表数效率:简化为:浮点数的表数效率随rm增大4、如果不采用隐藏位,基数为2时,表数效率最低,采用隐藏位,基数为2,则3个参数都达到最好。5、多数机器的尾数采用原码、小数表示,阶码一般机器都采用整数、移码表示。6、了解5种舍入法。哪种最简单,哪种最复杂最精确,哪种一般用于软件等。最简单:恒舍入法;最复杂最精确:R*舍入法;用于软件:下舍上入法。7、不设置警戒位,可能出现很大的误差;不设置警戒位,可能造成完全错误的运算结果。8、警戒位的作用,一般需要多少位?作用:(1)用于左规格化时移入尾数有效字长内。(2)用于舍入。警戒位:(1)同号相加或异号相减,浮点数的尾数之和不需要左规格化,因此不必设置警戒位。(2)同号相减或异号相加,阶差为0,不必设置警戒位。(3)同号相减或异号相加,阶差为1,只需要设置一位警戒位。(4)同号相减或异号相加,阶差大于等于2,只需一位警戒位。mpprrm)1(21),(eqmpeqmprrrrrm2212)1(21全部浮点数个数个数可表示的规格化浮点数mmmrrr1)(9、在计算机中可以自定义数据类型,如带标志符的数据表示方式和数据描述符表示法。10、什么是寻址技术,主要内容为编址方式、寻址方式和定位方式。寻址技术:寻找操作数及其他信息的地址的技术。内容:编址方式、寻址方式和定位方式。对象:寄存器、主存储器、堆栈和输入输出设备。11、计算机一般按字节编址,按字访问。12、三个零地址空间:通用寄存器、主存储器和输入输出设备均独立编址。两个零地址空间:主存储器与输入输出设备统一编址。一个零地址空间:所有存储设备统一编址,最低端是通用寄存器,最高端是输入输出设备,中间为主存储器。隐含编址方式(堆栈计算机),实际上没有零地址空间:堆栈。13、高位交叉编址主要目的是用来扩大存储器容量。低位交叉编址主要目的是提高存储器速度。14、间接寻址方式与变址寻址方式差别及优缺点。两种寻址方式的主要差别是:间址寻址方式:间接地址在主存中,无偏移量。变址寻址方式:基地址在变址寄存器中,有偏移量。主要优缺点比较:采用变址寻址方式编写的程序简单、易读。实现的难易程度:间址寻址方式容易。指令的执行速度:间址寻址方式慢。对数组运算的支持:变址寻址方式比较好。15、寄存器寻址和堆栈寻址的优缺点。寄存器寻址:主要优点:指令字长短、指令执行速度快、支持向量和矩阵运算速度高主要缺点:不利于优化编译(要充分利用寄存器,寄存器不对称)、现场切换困难、硬件复杂。堆栈寻址方式:主要优点:支持高级语言,有利于编译程序(逆波兰式)。节省存储空间(指令短)。支持程序的嵌套和递归调用,支持中断处理。主要缺点:运算速度比较低,一般将栈顶部分设计成一个高速的寄存器堆。16、理解程序的3种定位方式。直接定位方式:在程序装入主存储器之前,程序中的指令和数据的主存物理地址就已经确定了。静态定位:在程序装入主存储器的过程中随即进行地址变换,确定指令和数据的主存物理地址。动态定位:在程序执行过程中,当访问到相应的指令或数据时才进行地址变换,确定指令和数据的主存物理地址。17、固定操作码长度计算操作码的三种编码方法:固定长操作码;Huffman编码法;扩展编码法。相同的代码位数,最小码长等于:n是指令总数。nlLi2log18、最优huffman编码法能实际应用吗?不能,操作码必须是正整数。操作码最短平均长度:19、会计算信息冗余量固定长操作码相对于Huffman操作码的信息冗余量为:20、学会使用最小概率合并法1)把所有指令按照操作码在程序中出现的概率,自左向右从大到小排列好。2)从最右边选取两个概率最小的结点合并成一个概率值是二者之和的新结点,并把这个新结点与其它还没有合并的结点一起形成新结点集合。3)在新结点集合中选取两个概率最小的结点进行合并,如此继续进行下去,直至全部结点合并完毕。4)最后得到的根结点的概率值为1。5)每个结点都有两个分支,分别用一位代码“0”和“1”表示。6)从根结点开始,沿尖头所指方向,到达属于该指令的概率结点,把沿线所经过的代码组合起来得到这条指令的操作码编码。21、扩展编码法是由定长操作码与Huffman编码法相结合形成。22、学会分析不同地址码个数指令的应用情况(见例子)。23、不同地址码个数指令的特点和使用范围。24、缩短地址码长度的方法有哪些。1)用间址寻址方式缩短地址码长度在主存储器的低端开辟一个专门存放间接地址的区域。2)用变址寻址方式缩短地址码长度变址寻址方式中的地址偏移量比较短。3)用寄存器间接寻址方式缩短地址码长度例如:16个间址寄存器,用4位地址码就能表示很长的逻辑地址空间。25、指令系统的完整性、规整性(对称性、均匀性)、高效率、兼容性的含义。完整性:指应该具备的基本指令种类,通用计算机必须有5类基本指令。规整性:包括对称性和均匀性1)对称性:所有通用寄存器同等对待,操作码的设置等都要对称。2)均匀性:不同的数据类型、字长、存储设备、操作种类要设置相同的指令。高效率:指令的执行速度要快;指令的使用频度要高;兼容性:在同一系列机内指令系统不变(可以适当增加)。26、计算机的5类基本指令是什么。1数据传送类指令;2运算类指令;iniippH12lognppRniii212loglog13程序控制指令;4输入输出指令;5处理机控制和调试指令。27、一般条件转移指令和复合条件转移指令的区别,隐含条件转移指令。一般条件转移指令:条件码由转移指令之前的指令产生;复合条件转移指令:代替2条指令,首先进行运算,并根据运算的结果决定是否转移,不需要条件码,与高级语言一致。隐含转移指令:用于特殊的IF..THEN..结构中,THEN部分只有一条指令;把IF条件取反,如果取反后的条件成立则取消下条指令,否则执行下条指令。28、可以不设置输入输出指令,输入输出设备与主存储器共用同一个零地址空间。29、指令系统的优化设计有两个截然相反的方向:(复杂)CISC和(精简)RISC。30、数据传送指令的使用频度在程序中占40%左右,执行时间占30%以上。31、在一般高级语言中,循环体中只有一条语句的约占40%,有1至3条语句的约占70%左右。32、什么是高级语言计算机。缩小高级语言与机器语言差距,如果走到极端就是把高级语言与机器语言合二为一,即所谓的高级语言计算机。33、20%-%80规律指的是什么。1)CISC中,大约20%的指令占据了80%的处理机时间。2)其余80%指令:使用频度低,只占20%的处理机运行时间。34、哪几类指令的使用频度最高。数据传送指令;算术运算指令;转移指令。35、了解RISC的主要特点。1)大多数指令在单周期内完成2)LOAD/STORE结构3)硬布线控制逻辑4)减少指令和寻址方式的种类5)固定的指令格式6)注重编译优化技术36、利用程序执行时间的计算公式:P=I·CPI·T,比较一下RISC和CISC。对于T而言:1)RISC一般采用硬布线逻辑实现,指令要实现功能都比较简单2)RISC的T通常要比CISC的T小。3)RISC处理机的工作主频一般要比CISC处理机高。对于CPI而言:1)RISC的大多数指令都是单周期执行的,他们的CPI应该是12)由于RIS