当前位置:问答库>考研试题

2017年复旦大学软件学院408计算机学科专业基础综合之计算机组成原理考研导师圈点必考题汇编

  摘要

一、简答题

1. 说明总线结构对计算机系统性能的影响。

【答案】总线结构对计算机系统的性能影响有以下四点:

(1)简化了硬件的设计。从硬件的角度看,面向总线是由总线接口代替了专门的

由总线规范给出了传输线或信号的规定,并对存储器、设备和

的规定,所以,面向总线的微型计算机设计只要按照这些规定制作插件等,将它们连入总线即可工作,而不必考虑总线的详细操作。

(2)简化了系统结构。整个系统结构清晰,连线少,底板连线可以印刷化。

(3)系统扩充性好。一是规模扩充,二是功能扩充。规模扩充仅仅需要多插一些同类型的插件;功能扩充 仅仅需要按总线标准设计一些新插件,插件插入机器的位置往往没有严格的限制。这就使系统扩充既简单又快速可靠,而且也便于查错。

(4)系统更新性能好。存储器、接口等都是按总线规约挂到总线上的,故只要总线设计恰当,可以随时随着处理器芯片以及其他有关芯片的进展设计新的插件,对系统进行更新,且这种更新只需更新需要更新 的插件,其他插件和底板连线一般不需更改。

2. 数字计算机如何分类? 分类的依据是什么?

【答案】数字计算机可分为专用计算机和通用计算机,分类依据是计算机的效率、速度、价格、运行的经济性和适应性。

3. 比较单总线、多总线结构的性能特点。

【答案】(1)单总线结构是通过一组总线连接整个计算机系统的各大功能部件,即各大部件之间的所有的信息传 送都通过这组总线。其结构如图1所示。优点是允许与内存之间直接交换信息,只需分配总线使用权,不需要设备之间或设备干预信息的交换,即总线资源接口,如何挂在总线上都作了具体插件、存储器插件以及是由各大功能部件分时共享的。缺点是由于全部系统部件都连接在一组总线上,总线的负载很重,可能使其吞量达到饱和甚至不能胜任的程度,故多为小型机 和微型机采用。

图1 单总线结构

(2)双总线结构有两条总线,一条是内存总线,用于

第 2 页,共 43 页 内存和通道之间进行数据传送;

另一条是总线,用于多个外围设备与通道之间进行数据传送。其结构如图2所示。双总线结

的效率大为提高,并可以实现形式多样且更构中,通道是计算机系统 中的一个独立部件,使

理器,故双总线通常在大、中型计算机中采用。

为复杂的数据传送。优点是以增加通道这一设备为代价的,通道实际上是一台具有特殊功能的处

图2 双总线结构

(3)三总线结构在计算机系统各部件之间采用三条各自独立的总线来构成信息通路。这三条总线是:内存总线,

输入瑜出

于总线和直接存储器访问总线供总线,如图所示。内存总线用

和各类外设之间通讯用

;总和内存之间传送地址、数据的控制信息

;线使内存和高速外设之间直接传送数据。通常在三总线系统中,任一时刻只使用一种总线,但若使用多入口存储器,内存总线可与

系统总线的工作效率较低。

总线同时工作,此时三总线系统比单总线系统运行得更快。或内存间接传送,所以三总线但是三总线系统中,设备不能直接进行信息传送,而必须经过

图3 三总线结构

4. 为什么在页式虚拟存储器地址变换时可以用物理页号与页内偏移量直接拼接成物理地址,而在段式虚拟 存储器地址变换时必须用段起址与段内偏移量相加才能得到物理地址?

【答案】由于物理页与虚拟页的页面大小相同,且为2的整数次幂,所以页式虚拟存储器地址变换时可以用物理 页号与页内偏移量直接拼接成物理地址。而段式虚拟存储器的各段大小不同,且段起始地址任意,所以必须用段 起址与段内偏移量相加才能得到物理地址。

5. 说明软件发展的演变过程。

【答案】软件的发展演变主要有以下几个过程:

(1)在早期的计算机中,人们是直接用机器语言即机器指令代码来编写程序的,这种方式编写的程序称为手编程序;

(2)后来,为了编写程序方便和提高机器的使用效率,人们使用一些约定的文字、符号和数字按规定的格式来表示各种不同的指令,然后再用这些特殊符号表示的指令来编写程序,这就是

第 3 页,共 43 页

汇编程序;

(3)为了进一步实现程序自动化和便于程序交流,使不熟悉具体计算机的人也能很方便地使用计算机,人们又创造了各种接近于数学语言的算法语言;

(4)随着计算机技术的日益发展,原始的操作方式越来越不适应,特别是用户直接使用大型机器并独占机器,无论是对机器的效率来说还是对方便用户来说都不适宜,于是人们又创造出操作系统;

(5)随着计算机在信息处理、情报检索及各种管理系统中应用的发展,要求大量处理某些数据,建立和检索大量的表格。这些数据和表格按一定的规律组织起来,使得处理更方便,检索更迅速,用户使用更方便,于是出现了数据库,数据库和数据库管理软件组成了数据库管理系统。

二、分析题

6. 设变量h 放在寄存器

代码。C 赋值语句是;

【答案】虽然C 语句只有一个相加的操作,但是两个操作数均在存储器中,因此需要更多的ARM 指令。首先用取字(LDR

)指令访问存储器单元

存器最后用存字(STR )指令将寄存器,位移量为然后用ADD 指令将放在寄中的结果写到存储器单元此时寄存器作为基地址数组A 的基值放在寄存器r3, 请将下面c 语句翻译成ARM 汇编语言因ARM 也是字节寻址。3条ARM 汇编语言指令形式如下:

7. 假设一条指令的指令周期分为取指令、指令译码、执行指令三个子过程段,且这三个子过程延迟时间相等,即每个子过程延迟时间都为T 。假设某程序共同n=10000条指令,请写出如下两种情况下CPU 执行该程序所需的时间,画出时空图。

(1)指令顺序执行方式;

(2)指令流水执行方式。

【答案】(1)指令顺序执行方式如图1所示。

图1指令顺序执行方式

执行n 条指令的总时间为:

线中同时有3 条指令在执行,故 其中2T 是填满流水线的时间。(2)指令流水执行方式如图2所示。执行n 条指令的总时间为:2T 时间延迟后,CPU 流水

第 4 页,共 43 页