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

2018年东北电力大学信息工程学院852数据结构考研基础五套测试题

  摘要

一、综合题

1. 假定某计算机的CPU 主频为80MHz , CPI 为4, 并且平均每条指令访存

之间交换的块大小为168, Cache 的命中率为次, 主存与Cache , 存储器总线宽度为32位。请回答下列问题。

(1)该计算机的MIPS 数是多少? 平均每秒Cache 缺失的次数是多少? 在不考虑DMA 传送的情况下, 主存带宽至少达到多少才能满足CPU 的访存要求?

(2)假定在Cache 缺失的情况下访问主存时, 存在

式, 磁盘

少是多少?

(3)CPU和DMA 控制器同时要求使用存储器总线时, 哪个优先级更高? 为什么?

(4)为了提高性能, 主存采用4体交叉存储模式, 工作时每1/4个存储周期启动一个体。若每个体的存储周期为50ns , 则该主存能提供的最大带宽是多少?

【答案】(1)平均每秒CPU 执行的指令数为:

平均每秒Cache 缺失的次数为:

:。

在不考虑DMA 传输的情况下, 主存带宽至少达到

(2)平均每秒钟“缺页”异常次数为:

均每秒磁盘DMA 请求的次数至少为:

得不到及时响应, 传输数据可能会丢失。

。 次; 。 才能满足CPU 的访存要求。 , 故MIPS 数为20; 接口的数据缓冲寄存器为32位, 则磁盘的缺页率, 则CPU 平均每秒产生多少接口平均每秒发出的DMA 请求次数至次缺页异常? 若页面大小为4KB , 每次缺页都需要访问磁盘, 访问磁盘时DMA 传送采用周期挪用方当Cache 缺失时, CPU 访问主存, 主存与Cache 之间以块为单位传送数据, 此时, 主存带宽因为存储器总线宽度为32位, 所以, 每传送32位数据, 磁盘控制器发出一次DMA 请求, 故平(3)CPU和DMA 控制器同时要求使用存储器总线时, DMA 请求优先级更高; 因为若DMA 请求(4)4体交叉存储模式能提供的最大带宽为:

2. 设有正文AADBAACACCDACACAAD , 字符集为A , B , C , D , 设计一套二进制编码,使得上述正文的编码最短。

【答案】字符A ,B ,C ,D 出现的次数为9,1,5,3。其哈夫曼编码如下:A :1,B :000,C :01,D :001。

3.

设与记录

对应的关键字分别是。如果存在

和使得j

成立,试证明经过一趟起泡后,一定有记录与进行交换。

【答案】起泡排序思想是相邻两个记录的关键字比较,若反序则交换,一趟排序完成得到极值。由题假设知在,又因之前且,则,故,即说明和是反序;设对于和之前全部记录:(其中包括) 中关键字最大为,故经过起泡排序前i-2次比较后,

必定交换。 的关键字一定为和Rf 为反序,由此可知

4. 对于具有n 个叶结点且所有非叶结点都有左、右孩子的二叉树。

(1)试问这种二叉树的结点总数是多少?

(2)试证明。其中:表示第i 个叶结点所在的层号(设根结点所在层号为1) 。

【答案】(1)根据二叉树中度为2的结点个数等于叶结点个数减1的性质,故具有n 个叶结点且非叶子结点均有左子树的二叉树的结点数是2n -1。

(2)当i=1时,,公式成立。设当i=n-1时公式成立,证明当i=n时公式仍成立。 设某叶结点的层号为t ,当将该结点变为内部结点,从而再增加两个叶结点时,这两个叶结点的层号都是t+1,对于公式的变化,是减少了一个原来的叶结点,增加了两个新叶结点,反映到公

,所以结果不变,这就证明当i=n时公式仍成立。 式中,因为

5. 设哈希(Hash)表的地址范围为0〜17,哈希函数为:H(K)=KMOD16,K 为关键字,用线性探测再散列法处理冲突,输入关键字序列:(10,24,32,17,31,30,46,47,40,63,49) 造出哈希表,试回答下列问题:

(1)画出哈希表示意图;

(2)若查找关键字63,需要依次与哪些关键字比较?

(3)若查找关键字60,需要依次与哪些关键字比较?

(4)假定每个关键字的查找概率相等,求查找成功时的平均查找长度。

【答案】(1)哈希表不意图如表所示:

表 哈希示意图

(2)查找关键字63时,由于

比较。

(3)查找关键字60时,由于

(4)

哈希地址12内为空,查找失败。 所以需要依次与31,46,47,32,17,63

6. 三维数组

7]的存储首地址。 的每个元素的长度为4个字节,试问该数组要占多少个字节0,的存储空间? 如果数组元素以行优先的顺序存储,设第一个元素的首地址是100,试求元素A[5,

【答案】数组占的存储字节数=10*9*7*4=2520;A[5,0,7]的存储地址=100+[4*9*7+2*7+5]*4=1184

7. 某32位计算机, CPU 主频为800MHz , Cache 命中时的CPI 为4, Cache 块大小为32字节; 主存采用8体交叉存储方式, 每个体的存储字长为32位、存储周期为40ns ; 存储器总线宽度为32位, 总线时钟频率为200MHz , 支持突发传送总线事务。每次读突发传送总线事务的过程包括:送首地址和命令、存储器准备数据、传送数据。每次突发传送32字节, 传送地址或32位数据均需要一个总线时钟周期。请回答下列问题, 要求给出理由或计算过程。

(1)CPU和总线的时钟周期各为多少?总线的带宽(即最大数据传输率) 为多少?

(2)Cache缺失时, 需要用几个读突发传送总线事务来完成一个主存块的读取?

(3)存储器总线完成一次读突发传送总线事务所需的时间是多少?

(4)若程序BP 执行过程中, 共执行了100条指令, 平均每条指令需进行

为, 不考虑替换等开销, 则BP 的CPU 执行时间是多少?

【答案】(1)因为CPU 主频为800MHz , 故CPU 的时钟周期为:

总线时钟频率为200MHz , 故总线的时钟周期为:

总线宽度为

块。

(3)—次读突发传送总线事务包括一次地址传送和32B 数据传送:用1个总线时钟周期传输地址; 每隔=5tis启动一个体工作(各进行1次存取) , 第一个体读数据花费40ns , 之后数据存取与数

(4)BP的CPU 执行时间包括Cache 命中时的指令执行时间和Cache 缺失时带来的额外开销。即执行时间=指令条数*CPI*时钟周期*命中率+访存次数*缺失率*缺失损失。命中时的指令执行时

间:

指令执行过程中Cache 缺失时的额外开销

BP 的CPU 执行时间:

=1010ns。

8. 简述广义表属于线性结构的理由。

【答案】广义表中的元素,可以是原子,也可以是子表,即广义表是原子或子表的有限序列,满足线性结构的特性:在非空线性结构中,只有一个称为“第一个”的元素,只有一个称为“最后一个”

次访存, Cache 缺失率。 。 。 , 故总线带宽为(2)因为Cache 块大小为32B , 因此Cache 缺失时需要一个读突发传送总线事务读取一个贮存据传输重叠; 用8个总线时钟周期传输数据。读突发传送总线事务时间:

500ns 。