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

2017年大连理工大学人文与社会科学学部408计算机学科专业基础综合之计算机组成原理考研冲刺密押题

  摘要

一、选择题

1. 以下陈述中不属于机群系统特征的是( )。

A. 机群的每个结点上驻留有完整的操作系统

B. 机群的各结点间通过共享磁盘实现信息交换

C. 机群的各结点通过低成本的商用网络互连

D. 机群的每个结点都是一个完整的计算机

【答案】B

2. 下列选项中会导致进程从执行态变为就绪态的事件是( )。

A. 执行P (wait )操作

B. 申请内存失败

C. 启动I/O设备

D. 被尚优先级进程抢占

【答案】D

【解析】D 项,被高优先级进程抢占,进程会由执行态变为就绪态。ABC 三项,程序由于缺少资源而由执行态转为阻塞态。

3. 下列表述中,微指令结构设计不追求的目标是( )。

A. 提高微程序的执行速度

B. 提高微程序设计的灵活性

C. 缩短微指令的长度

D. 增大控制存储器的容量

【答案】D

4. 某字长为8位的计算机中,已知整型变量x 、y 的机器数分别为若整型变量

A.11000000

B.00100100

C.10101010 则z 的机器数为( )

D. 溢出

【答案】A

y 右移一位, 【解析】将x 左移一位,两个数的补码相加的机器数为11000000, 故答案选择A 。

5. 希尔排序的组内排序采用的是( )。

A. 直接插入排序

B. 折半插入排序

C. 快速排序

D. 归并排序

【答案】A

【解析】希尔排序基本思想是:先将整个待排元素序列按某个增量分割成若干个子序列,在子序列内进行直接插入排序,然后依次缩减增量再进行排序,待整个序列中的元素基本有序(増量足够小)时,再对全体元素进行一次直接插入排序。

6. 有两个并发执行的进程P1和P2, 共享初值为1的变量x 。P1对x 加1,P2对x 减1。加1和减1操作的指令序列分别如下所示。

两个操作完成后,2的值( )。

A. 可能为-1或3

B. 只能为1

C. 可能为0、1或2

D. 可能为-1、0、1或2

【答案】C

【解析】这是在数据库中常有的操作。为保证数据的正确,避免产生错误,系统必须保证数据的同步。而保证数据的同步一般采取加锁的方法,让进程P1和P2互斥访问共享变量X 。当然用信号量和P 、V 操作也是可以保证互斥操作,达到数据同步的。本例中,由于没有采取保证数据同步的相应措施,则最后结果就会出现差错。例如,当正常情况下,进程P1和P2先后对x 操作,可以看到x 值的变化为初始的过程,若P2, P1先后操作,则x 值的变化为初始

这是正确的。若考虑一种并发的情况,进程P1和P2先后执行了取数load 的操作,它们得到的x 值均为1,运算后,P1和P2的x 值分别为2和0, 此时要看哪个进程后执行存数store 的操作了,哪个进程后操作,结果就是那个进程的x 值,所以可能的结果为0或2, 加上前面正确的x 值1, 则可能的结果就有3种了。

7. 周期挪用方式常用于方式的输入/输出中( )。

A. 程序查询方式

B. 中断方式

C.DMA 方式

D. 通道方式

【答案】C

8. 中断处理和子程序调用都需要压栈以保护现场,中断处理一定会保存而子程序调用不需要保存其内容的是( )。

A. 程序计数器

B. 程序状态字寄存器

C. 通用数据寄存器

D. 通用地址寄存器

【答案】B 。

【解析】中断处理与子程序调用最大的区别是中断处理程序与正在运行的进程可能无关,而子程序调用与正在运行的进程有关。中断是要打断处理器的正常工作次序,并要求其去处理某一事件的一种常用手段。因此,除了要保护当前程序的地址,计数器(指针)和数据寄存器以外,还需要保存程序状态字。子程序调用是与当前进程有关,是正在运行的程序有意安排执行的,这一类调用发生的时间以及位置具有确定性,处于同一个进程内,因此不需要保存程序状态字。所以中断处理和子程序调用不同的区别是中断处理程序必定会保存程序状态字寄存器。

9. 设栈S 和队列Q 的初始状态均为空,元素a ,b ,c ,d ,e ,f ,g 依次进入栈S 。若每个元素出栈后立即进入队列Q ,且7个元素出队的顺序是b ,d ,c ,f ,e ,a ,g ,则栈S 的容量至少是( )。

A.1

B.2

C.3

D.4

【答案】C

【解析】由于栈具有先进后出的特性,队列具有先进先出的特性,出队顺序即为人队顺序。在本题中,每个元素出栈S 后立即进入队列Q ,出栈顺序即为入队顺序,所以本题中队列的作用形同虚设,根据题意出队顺序即为出栈顺序。根据出栈顺序可以分析各个元素进出栈的过程:第一个出栈元素为b ,表明栈内还有元素a ,b 出栈前的深度为2; 第二个出栈元素为d ,找内元素为a 和c ,d 出栈前的深度为3; c 出找后,剩余元素为a ,c 出栈前的深度为2; f 出栈后,剩余元素为a 和e ,f 出栈前的深度为3; e 出栈后,剩余元素为a ,e 出栈前的深度为2; a 出栈后,无剩余元素,a 出栈前的深度为1; g 出栈后,无剩余元素,g 出栈前的深度为:L 所以栈容量至少是3。