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

2017年西安工程大学924数据结构复试仿真模拟三套题

  摘要

一、应用题

1. 分析ISAM 文件(IndeXed Sequential Access Methord)和VSAM 文件(Virtual storage Access Methord )的应用场合、优缺点等。

【答案】ISAM 是一种专为磁盘存取设计的文件组织形式,采用静态索引结构,对磁盘上的数据文件建立盘组、柱面、磁道三级索引。ISAM 文件中记录按关键字顺序存放,插入记录时需移动记录并将同一磁道上最后的一个记录移至溢出区,同时修改磁道索引项,删除记录只需在存储位置作标记,不需移动记录和修改指针。经过多次插入和删除记录后,文件结构变得不合理,需周期整理ISAM 文件。

VSAM 文件采用动态索引结构,文件只有控制区间和控制区域等逻辑存储单位,与外存储

树,作为文件的索引部分可实现顺链查找和从器中柱面、磁道等具体存储单位没有必然联系。VSAM 文件结构包括索引集、顺序集和数据集三部分,记录存于数据集中,顺序集和索引集构成

根结点开始的随机查找。

优缺点:与ISAM 文件相比,VSAM 文件有如下优点:动态分配和释放存储空间,不需对文件进行重组;能保持较高的查找效率,且查找先后插入记录所需时间相同。因此,基于

文件通常作为大型索引顺序文件的标准组织。

2.

某局域网采用协议实现介质访问控制,

数据传输率为

程。

(1)若主机甲和主机乙发送数据时发生冲突,则从开始发送数据时刻起,到两台主机均检测到冲突时刻止,最短需经过多长时间? 最长需经过多长时间?(假设主机甲和主机乙发送数据过程中,其他主机不发送数据)

(2)若网络不存在任何冲突与差错,主机甲总是以标准的最长以太网数据帧(1518字节)向主机乙发送数据,主机乙每成功收到一个数据帧后立即向主机甲发送一个64字节的确认帧,主机甲收到确认帧后方可发送下一个数据帧,此时主机甲的有效数据传输速率是多少?(不考虑以太网帧的前导码)

【答案】(1)当甲乙两台主机同时向对方发送数据时,两台主机均检测到冲突的时间最短

:=

(lkm/200000km/s)×2=10j×s ; 当一台主机发送的数据就要到达另一台主机时,另一台主机才发送数据,两台主机均检测到冲突的时间最长:

=1500B=1500×8bit=12000bit; 发送1518B 的发送时间=1518×8/10Mbps=

第 2 页,共 20 页 的VSAM 主机甲和主机乙之间的距离为2km ,信号传播速度是200000km/S。请回答下列问题,要求说明理由或写出计算过 数据帧的传播时(2)有效数据传输速率=发送的有效数据/发送有效数据所用的总时间。发送的有效数据

间=2km/200000km/s

=确认帧的发送时间=64×

8/10Mbps=; 确认帧的传播时间

=2km/200000km/s=; 发送1518B 所用的总时间为

1285.6μs=9.33Mbps。

3. 某程序中有如下循环代码段p :

P 起始地址 为0804 8100H,对应的汇编代码和机器代码如下表所示

主机甲的有效数据传输率为12000bit /假设编译时变量sum 和i 分别分配在寄存器R1和R2中。常量N 在寄存器R6中,数组A 的首地址在寄存器R3中,程序段

执行上述代码的计算机M 采用32位定长指令字,其中分支指令Bne 采用如下格式,

Op 为操作码:Rs 和Rd 为寄存器编号:OFFSET 为偏移量,用补码表示。请回答下列问题,并说明理由。

(1)M 的存储器编址单位是什么?

(2)已知sll 指令实现左移功能,数组A 中每个元素占多少位?

(3)表中bne 指令的OFFSET 字段的值是多少?已知bne 指令采用相对寻址方式,当前PC 内容为bne 指令地址,通过分析表中指令地址和bne 指令内容,推断出bne 指令的转移目标地址计算公式。

(4)若M 采用如下“按序发射、按序完成”的5级指令流水线:IF (取指)、ID (译码及

,且硬件不采取任何转发措施,分取数)、EXE (执 行)、MEM (访存)、WB (写回寄存器)

支指令的执行均引起3个时钟周期阻塞,则P 中哪些指令的执行会由于数据相关而发生流水线阻塞?哪条指令的执行会发生控制冒险?为什么指令1 的执行不会因为与指令5的数据相关而发生阻塞?

【答案】(1)由题可知,指令为32为即4个字节,而程序执行时是以4为间隔逐条取指令的,故可知M 的存储器是采用字节编址。

(2)32位,因为sll 中实现左移,而(R2) <<2 R4即左移两位就是乘以4,所以是

(3)由Bne 的指令格式可知其OFFSET 为指令的后16位,而Bne 的机器码码为1446 FFFAH,所以Bne 的OFFSET 为FFFAH 即-6。

第 3 页,共 20 页

由题可知Bne 采用相对寻址方式,故有效地址

为当前Bne 指令的地址

即而取完Bne 而PC 的值指令后

而要跳转到指令1的地址08048100H ,两者相差了18H 也

就是24个字节,而OFFSET 是-6, 故转移目标地址计算公式为(PC

(4)由指令序列可知,指令1需写R4而指令2需读R4, 故指令2会因为数据相关而发生阻塞,同理指令3、指令4也会因为数据相关而发生阻塞;而指令6为分支指令,故其存在控制冒险。因为分支指令会有3个时钟周期的阻塞,故指令1的执行不会因为指令5的数据相关而发生阻塞。

4. 一个循环队列的数据结构描述如下:

给出循环队列的队空和队满的判断条件,并且分析一下该条件对队列实际存储空间大小的影响,如果为了不损失存储空间,你如何改进循环队列的队空和队满的判断条件?

【答案】(1)队空:

(2)队满:

这种判断方法,会“牺牲一个存储单元”。为了不损失存储空间,可以通过设置标志位的方式来进行队空和队满的判断。设标记tag ,tag 等于0情况下,若删除时导致front=rear为队空; tag=l情况下,若因插入导致front=rear则为队满。

5. 假定某计算机的CPU 主频为80MHz , CPI为4, 并且平均每条指令访存1.5次,主存与Cache 之间交换的块大小为168, Cache的命中率为存储器总线宽度为32位。请回答下列问题。

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

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

期挪用方式,磁盘接口的数据缓冲寄存器为32位,则磁盘的缺页率,则CPU 平均每秒产接口平均每秒发出的DMA 生多少次缺页异常? 若页面大小为4KB ,每次缺页都需要访问磁盘,访问磁盘时DMA 传送采用周请求次数至少是多少?

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

(4)为了提高性能,主存采用4体交叉存储模式,工作时每

每个体的存储周期为50ns ,则该主存能提供的最大带宽是多少?

【答案】

(1)平均每秒CPU 执行的指令数为:故MIPS 数为20;

第 4 页,共 20 页 个存储周期启动一个体。若