计算机体系结构课后习题(附答案)
- 格式:pdf
- 大小:869.49 KB
- 文档页数:14
第一章计算机系统结构的基本概念1. 有一个计算机系统可按功能分成4 级,每级的指令互不相同,每一级的指令都比其下一级的指令在效能上强M 倍,即第i 级的一条指令能完成第i-1 级的M 条指令的计算量。
现若需第i 级的N 条指令解释第i+1 级的一条指令,而有一段第 1 级的程序需要运行Ks ,问在第 2 、3 和 4 级上一段等效程序各需要运行多长时间?答:第2 级上等效程序需运行:(N/M)*Ks 。
第 3 级上等效程序需运行:(N/M)*(N/M)*Ks 。
第4 级上等效程序需运行:(N/M)*(N/M)*(N/M)*Ks 。
note: 由题意可知:第i 级的一条指令能完成第i-1 级的M 条指令的计算量。
而现在第i 级有N 条指令解释第i+1 级的一条指令,那么,我们就可以用N/M 来表示N/M 表示第i+1 级需(N/M) 条指令来完成第i 级的计算量。
所以,当有一段第 1 级的程序需要运行Ks 时,在第 2 级就需要(N/M)Ks ,以此类推2. 硬件和软件在什么意义上是等效的?在什么意义上又是不等效的?试举例说明。
答:软件和硬件在逻辑功能上是等效的,原理上,软件的功能可用硬件或固件完成,硬件的功能也可用软件模拟完成。
但是实现的性能价格比,实现的难易程序不同。
在DOS 操作系统时代,汉字系统是一个重要问题,早期的汉字系统的字库和处理程序都固化在汉卡(硬件)上,而随着CPU硬盘、内存技术的不断发展,UCDOS把汉字系统的所有组成部份做成一个软件。
3. 试以实例说明计算机系统结构、计算机组成与计算机实现之间的相互关系与影响。
答:计算机系统结构、计算机组成、计算机实现互不相同,但又相互影响。
(1) 计算机的系统结构相同,但可采用不同的组成。
如IBM370 系列有115、125 、135、158 、168 等由低档到高档的多种型号机器。
从汇编语言、机器语言程序设计者看到的概念性结构相同,均是由中央处理机/ 主存,通道、设备控制器,外设 4 级构成。
第1章计算机系统结构的基本概念1.1 解释下列术语层次机构:按照计算机语言从低级到高级的次序,把计算机系统按功能划分成多级层次结构,每一层以一种不同的语言为特征。
这些层次依次为:微程序机器级,传统机器语言机器级,汇编语言机器级,高级语言机器级,应用语言机器级等。
虚拟机:用软件实现的机器。
翻译:先用转换程序把高一级机器上的程序转换为低一级机器上等效的程序,然后再在这低一级机器上运行,实现程序的功能。
解释:对于高一级机器上的程序中的每一条语句或指令,都是转去执行低一级机器上的一段等效程序。
执行完后,再去高一级机器取下一条语句或指令,再进行解释执行,如此反复,直到解释执行完整个程序。
计算机系统结构:传统机器程序员所看到的计算机属性,即概念性结构与功能特性。
透明性:在计算机技术中,把这种本来存在的事物或属性,但从某种角度看又好像不存在的概念称为透明性。
计算机组成:计算机系统结构的逻辑实现,包含物理机器级中的数据流和控制流的组成以及逻辑设计等。
计算机实现:计算机组成的物理实现,包括处理机、主存等部件的物理结构,器件的集成度和速度,模块、插件、底板的划分与连接,信号传输,电源、冷却及整机装配技术等。
系统加速比:对系统中某部分进行改进时,改进后系统性能提高的倍数。
Amdahl定律:当对一个系统中的某个部件进行改进后,所能获得的整个系统性能的提高,受限于该部件的执行时间占总执行时间的百分比。
程序的局部性原理:程序执行时所访问的存储器地址不是随机分布的,而是相对地簇聚。
包括时间局部性和空间局部性。
CPI:每条指令执行的平均时钟周期数。
测试程序套件:由各种不同的真实应用程序构成的一组测试程序,用来测试计算机在各个方面的处理性能。
存储程序计算机:冯·诺依曼结构计算机。
其基本点是指令驱动。
程序预先存放在计算机存储器中,机器一旦启动,就能按照程序指定的逻辑顺序执行这些程序,自动完成由程序所描述的处理工作。
系列机:由同一厂家生产的具有相同系统结构、但具有不同组成和实现的一系列不同型号的计算机。
第1章 计算机系统结构的基本概念1.1 试用实例说明计算机系统结构、计算机组成与计算机实现之间的相互关系。
答:如在设计主存系统时,确定主存容量、编址方式、寻址范围等属于计算机系统结构。
确定主存周期、逻辑上是否采用并行主存、逻辑设计等属于计算机组成。
选择存储芯片类型、微组装技术、线路设计等属于计算机实现。
计算机组成是计算机系统结构的逻辑实现。
计算机实现是计算机组成的物理实现。
一种体系结构可以有多种组成。
一种组成可以有多种实现。
1.2 计算机系统设计中经常使用的4个定量原理是什么?并说出它们的含义。
答:(1)以经常性事件为重点。
在计算机系统的设计中,对经常发生的情况,赋予它优先的处理权和资源使用权,以得到更多的总体上的改进。
(2)Amdahl 定律。
加快某部件执行速度所获得的系统性能加速比,受限于该部件在系统中所占的重要性。
(3)CPU 性能公式。
执行一个程序所需的CPU 时间 = IC ×CPI ×时钟周期时间。
(4)程序的局部性原理。
程序在执行时所访问地址的分布不是随机的,而是相对地簇聚。
1.3 计算机系统中有三个部件可以改进,这三个部件的部件加速比为:部件加速比1=30; 部件加速比2=20; 部件加速比3=10(1) 如果部件1和部件2的可改进比例均为30%,那么当部件3的可改进比例为多少时,系统加速比才可以达到10?(2) 如果三个部件的可改进比例分别为30%、30%和20%,三个部件同时改进,那么系统中不可加速部分的执行时间在总执行时间中占的比例是多少?解:(1)在多个部件可改进情况下,Amdahl 定理的扩展:∑∑+-=iii n S F F S )1(1已知S 1=30,S 2=20,S 3=10,S n =10,F 1=0.3,F 2=0.3,得:)()(10/20/0.330/0.30.30.3-111033F F +++++=得F 3=0.36,即部件3的可改进比例为36%。
一、(5分)计算机系统设计中经常使用的4个定量原理是什么?请简要说明它们的含义。
答:(1)以经常性事件为重点。
在计算机系统的设计中,对经常发生的情况,赋予它优先的处理权和资源使用权,以得到更多的总体上的改进。
(2)Amdahl 定律。
加快某部件执行速度所获得的系统性能加速比,受限于该部件在系统中所占的重要性。
(3)CPU 性能公式。
执行一个程序所需的CPU 时间 = IC ×CPI ×T 。
(4)程序的局部性原理。
程序在执行时所访问地址的分布不是随机的,而是相对地簇聚。
二、(15分)假设某应用程序中有4类操作,通过改进各类操作的功能部件,可(2)各类操作单独改进后,程序获得的加速比分别是多少? (3)4类操作均改进后,整个程序的加速比是多少? 答:根据Amdahl 定律aff S n +-=)1(1,其中f 是可改进部分在总运行时间中所占比例,a 是可改进部分的加速比,可得4类操作均改进后,整个程序的加速比:11.77(1)n ii iS FF S =≈-+∑∑三、(5分)请简述指令之间数据冲突的类型。
答:指令之间的数据冲突有3种类型:真相关、反相关、输出相关。
真相关(数据依赖,有时候也称为数据相关):考虑两条指令i 和j ,i 在j 的前面,指令k 在指令i 和指令j 之间。
如果下述条件之一成立,则称指令j 与指令i 真相关:(1)指令j 使用指令i 产生的结果(写后读);(2)指令j 与指令k 真相关,而指令k 又与指令i 真相关。
(真相关的传递性) 反相关:考虑两条指令i 和j ,i 在j 的前面,如果指令j 所写的名与指令i 所读的寄存器名或存储地址相同,则称指令i 和j 发生了反相关。
(读后写)输出相关:考虑两条指令i 和j ,i 在j 的前面,如果指令j 和指令i 所写的寄存器名或存储地址相同,则称指令i 和j 发生了输出相关。
(写后写) 其中反相关和输出相关又合称名相关。
第1章计算机系统结构的基本概念1.1解释下列术语计算机系统结构:传统机器程序员所看到的计算机属性,即概念性结构与功能特性。
计算机组成:计算机系统结构的逻辑实现,包含物理机器级中的数据流和控制流的组成以及逻辑设计等。
计算机实现:计算机组成的物理实现,包括处理机、主存等部件的物理结构,器件的集成度和速度,模块、插件、底板的划分与连接,信号传输,电源、冷却及整机装配技术等。
系统加速比:对系统中某部分进行改进时,改进后系统性能提高的倍数。
Amdahl定律:当对一个系统中的某个部件进行改进后,所能获得的整个系统性能的提高,受限于该部件的执行时间占总执行时间的百分比。
并行性:计算机系统在同一时刻或者同一时间间隔内进行多种运算或操作。
只要在时间上相互重叠,就存在并行性。
它包括同时性与并发性两种含义。
1.2试用实例说明计算机系统结构、计算机组成与计算机实现之间的相互关系。
答:如在设计主存系统时,确定主存容量、编址方式、寻址范围等属于计算机系统结构。
确定主存周期、逻辑上是否采用并行主存、逻辑设计等属于计算机组成。
选择存储芯片类型、微组装技术、线路设计等属于计算机实现。
计算机组成是计算机系统结构的逻辑实现。
计算机实现是计算机组成的物理实现。
一种体系结构可以有多种组成。
一种组成可以有多种实现。
1.4计算机系统设计中经常使用的4个定量原理是什么?并说出它们的含义。
答:(1)以经常性事件为重点。
在计算机系统的设计中,对经常发生的情况,赋予它优先的处理权和资源使用权,以得到更多的总体上的改进。
(2)Amdahl定律。
加快某部件执行速度所获得的系统性能加速比,受限于该部件在系统中所占的重要性。
(3)CPU性能公式。
执行一个程序所需的CPU时间=IC×CPI×时钟周期时间。
(4)程序的局部性原理。
程序在执行时所访问地址的分布不是随机的,而是相对地簇聚。
1.6某台主频为400MHz的计算机执行标准测试程序,程序中指令类型、执行数量和平均时钟周期数如下:指令类型指令执行数量平均时钟周期数整数450001数据传送750002浮点80004分支15002求该计算机的有效CPI、MIPS和程序执行时间。
第2章课后习题1、尾数用补码、小数表示,阶码用移码、整数表示,尾数字长p=6〔不包括符号位〕,阶码字长q=6〔不包括符号位〕,为数基值r m=16,阶码基值r e=2。
对于规格化浮点数,用十进制表达式写出如下数据〔对于前11项,还要写出16进值编码〕。
〔1〕最大尾数〔8〕最小正数〔2〕最小正尾数〔9〕最大负数〔3〕最小尾数〔10〕最小负数〔4〕最大负尾数〔11〕浮点零〔5〕最大阶码〔12〕表数精度〔6〕最小阶码〔13〕表数效率〔7〕最大正数〔14〕能表示的规格化浮点数个数2.一台电脑系统要求浮点数的精度不低于10,表数范围正数不小于1038,且正、负数对称。
尾数用原码、纯小数表示,阶码用移码、整数表示。
(1) 设计这种浮点数的格式(2) 计算〔1〕所设计浮点数格式实际上能够表示的最大正数、最大负数、表数精度和表数效率。
3.某处理机要求浮点数在正数区的积累误差不大于2-p-1,其中,p是浮点数的尾数长度。
(1) 选择合适的舍入方法。
(2) 确定警戒位位数。
(3) 计算在正数区的误差范围。
4.假设有A和B两种不同类型的处理机,A处理机中的数据不带标志符,其指令字长和数据字长均为32位。
B处理机的数据带有标志符,每个数据的字长增加至36位,其中有4位是标志符,它的指令数由最多256条减少到不到64条。
如果每执行一条指令平均要访问两个操作数,每个存放在存储器中的操作数平均要被访问8次。
对于一个由1000条指令组成的程序,分别计算这个程序在A处理机和B处理机中所占用的存储空间大小〔包括指令和数据〕,从中得到什么启发?5.一台模型机共有7条指令,各指令的使用频率分别为35%,25%,20%,10%,5%,3%和2%,有8个通用数据寄存器,2个变址寄存器。
(1) 要求操作码的平均长度最短,请设计操作码的编码,并计算所设计操作码的平均长度。
(2) 设计8字长的寄存器-寄存器型指令3条,16位字长的寄存器-存储器型变址寻址方式指令4条,变址范围不小于±127。
第二章习题(P69-70)一、复习题1.简述冯∙诺依曼原理,冯∙诺依曼结构计算机包含哪几部分部件,其结构以何部件为中心?答:冯∙诺依曼理论的要点包括:指令像数据那样存放在存储器中,并可以像数据那样进行处理;指令格式使用二进制机器码表示;用程序存储控制方式工作。
这3条合称冯∙诺依曼原理OgtiojD。
冯∙诺依曼计算机由五大部分组成:运算器、控制器、存储器、输入设备、输出设备,整个结构一般以运算器为中心,也可以以控制器为中心。
(P51-P54)r1fI4bu。
2.简述计算机体系结构与组成、实现之间的关系。
答:计算机体系结构通常是指程序设计人员所见到的计算机系统的属性,是硬件子系统的结构概念及其功能特性。
计算机组成(computer organization)是依据计算机体系结构确定并且分配了硬件系统的概念结构和功能特性的基础上,设计计算机各部件的具体组成,它们之间的连接关系,实现机器指令级的各种功能和特性。
同时,为实现指令的控制功能,还需要设计相应的软件系统来构成一个完整的运算系统。
计算机实现,是计算机组成的物理实现,就是把完成逻辑设计的计算机组成方案转换为真实的计算机。
计算机体系结构、计算机组成和计算机实现是三个不同的概念,各自有不同的含义,但是又有着密切的联系,而且随着时间和技术的进步,这些含意也会有所改变。
在某些情况下,有时也无须特意地去区分计算机体系结构和计算机组成的不同含义。
(P47-P48)28BoSAn。
3.根据指令系统结构划分,现代计算机包含哪两种主要的体系结构?答:根据指令系统结构划分,现代计算机主要包含:CISC和RISC两种结构。
(P55)4.简述RISC技术的特点?答:从指令系统结构上看,RISC体系结构一般具有如下特点:(1)精简指令系统。
可以通过对过去大量的机器语言程序进行指令使用频度的统计,来选取其中常用的基本指令,并根据对操作系统、高级语言和应用环境等的支持增设一些最常用的指令;hJslBtf。
第1章计算机系统结构的基本概念 (1)第2章指令集结构的分类 (6)第3章流水线技术 (8)第4章指令级并行 (21)第5章存储层次 (30)第6章输入输出系统 (38)第7章互连网络 (41)第8章多处理机 (45)第9章机群 (45)第1章计算机系统结构的基本概念1.1 解释下列术语层次机构:按照计算机语言从低级到高级的次序,把计算机系统按功能划分成多级层次结构,每一层以一种不同的语言为特征。
这些层次依次为:微程序机器级,传统机器语言机器级,汇编语言机器级,高级语言机器级,应用语言机器级等。
虚拟机:用软件实现的机器。
翻译:先用转换程序把高一级机器上的程序转换为低一级机器上等效的程序,然后再在这低一级机器上运行,实现程序的功能。
解释:对于高一级机器上的程序中的每一条语句或指令,都是转去执行低一级机器上的一段等效程序。
执行完后,再去高一级机器取下一条语句或指令,再进行解释执行,如此反复,直到解释执行完整个程序。
计算机系统结构:传统机器程序员所看到的计算机属性,即概念性结构与功能特性。
在计算机技术中,把这种本来存在的事物或属性,但从某种角度看又好像不存在的概念称为透明性。
计算机组成:计算机系统结构的逻辑实现,包含物理机器级中的数据流和控制流的组成以及逻辑设计等。
计算机实现:计算机组成的物理实现,包括处理机、主存等部件的物理结构,器件的集成度和速度,模块、插件、底板的划分与连接,信号传输,电源、冷却及整机装配技术等。
系统加速比:对系统中某部分进行改进时,改进后系统性能提高的倍数。
Amdahl定律:当对一个系统中的某个部件进行改进后,所能获得的整个系统性能的提高,受限于该部件的执行时间占总执行时间的百分比。
程序的局部性原理:程序执行时所访问的存储器地址不是随机分布的,而是相对地簇聚。
包括时间局部性和空间局部性。
CPI:每条指令执行的平均时钟周期数。
测试程序套件:由各种不同的真实应用程序构成的一组测试程序,用来测试计算机在各个方面的处理性能。
第1章计算机系统结构的基本概念1.1 解释下列术语层次机构:按照计算机语言从低级到高级的次序,把计算机系统按功能划分成多级层次结构,每一层以一种不同的语言为特征。
这些层次依次为:微程序机器级,传统机器语言机器级,汇编语言机器级,高级语言机器级,应用语言机器级等。
虚拟机:用软件实现的机器。
翻译:先用转换程序把高一级机器上的程序转换为低一级机器上等效的程序,然后再在这低一级机器上运行,实现程序的功能。
解释:对于高一级机器上的程序中的每一条语句或指令,都是转去执行低一级机器上的一段等效程序。
执行完后,再去高一级机器取下一条语句或指令,再进行解释执行,如此反复,直到解释执行完整个程序。
计算机系统结构:传统机器程序员所看到的计算机属性,即概念性结构与功能特性。
透明性:在计算机技术中,把这种本来存在的事物或属性,但从某种角度看又好像不存在的概念称为透明性。
计算机组成:计算机系统结构的逻辑实现,包含物理机器级中的数据流和控制流的组成以及逻辑设计等。
计算机实现:计算机组成的物理实现,包括处理机、主存等部件的物理结构,器件的集成度和速度,模块、插件、底板的划分与连接,信号传输,电源、冷却及整机装配技术等。
系统加速比:对系统中某部分进行改进时,改进后系统性能提高的倍数。
Amdahl定律:当对一个系统中的某个部件进行改进后,所能获得的整个系统性能的提高,受限于该部件的执行时间占总执行时间的百分比。
程序的局部性原理:程序执行时所访问的存储器地址不是随机分布的,而是相对地簇聚。
包括时间局部性和空间局部性。
CPI:每条指令执行的平均时钟周期数。
测试程序套件:由各种不同的真实应用程序构成的一组测试程序,用来测试计算机在各个方面的处理性能。
存储程序计算机:冯·诺依曼结构计算机。
其基本点是指令驱动。
程序预先存放在计算机存储器中,机器一旦启动,就能按照程序指定的逻辑顺序执行这些程序,自动完成由程序所描述的处理工作。
系列机:由同一厂家生产的具有相同系统结构、但具有不同组成和实现的一系列不同型号的计算机。