一、选择题
1. 采用递归方式对顺序表进行快速排序。下列关于递归次数的叙述中,正确的是( )。
A. 递归次数与初始数据的排列次序无关
B. 每次划分后,先处理较长的分区可以减少递归次数
C. 每次划分后,先处理较短的分区可以减少递归次数
D. 递归次数与每次划分后得到的分区的处理顺序无关
【答案】D
【解析】快速排序是递归的,递归过程可用一棵二叉树给出,递归调用层次数与二叉树的深
,采用快速排序方法,其对应递归度一致。例如:待排序列{48,62,35,77,55,14,35,98)
调用过程的二叉树如下图所示。
在最坏情况下,若初始序列按关键码有序或基本有序时,快速排序反而蜕化为冒泡排序。即其对应递归调用过程的二叉树是一棵单支树。因此快速排序的递归次数与初始数据的排列次序有关。但快速排序的递归次数与每次划分后得到的分区处理顺序无关,即先处理较长的分区或先处理较短的分区都不影响递归次数。
2. 某系统正在执行三个进程Pl 、P2和P3, 各进程的计算(CTUCPUCPU )时间和I/OI/O时间比例如下表所示。
为提高系统资源利用率,合理的进程优先级设置应( ) A. B. C. D.
【答案】B
【解析】为了合理地设置进程优先级,应该将进程的CPU 利用时间和I/O时间做综合考虑,故答案选B 。
3. 下列选项中,在I/O总线的数据线上传输的信息包括( )。
Ⅰ.I/O接口中的命令字Ⅱ.I/O接口中的状态字Ⅲ. 中断类型号
A. 仅Ⅰ、Ⅱ
B. 仅Ⅰ、Ⅲ
C. 仅Ⅱ、Ⅲ
D.I 、Ⅱ、Ⅲ
【答案】D 。
【解析】在I/O总线的数据线上传输的信息包括I/O接口中的命令字、状态字以及真正的数据,而中断类型号也是通过数据线传输的。
4. 设系统缓冲区和用户工作均采单,从外读入1个数据块到系统缓冲区的时间为100, 从系统缓冲区读入1个数据块到用户工作区的时间为5, 对用户工作区中的1个数据块行分析的时间为90(如下图所示)。进程从外设读入并分析2个数据块的最短时间是( )
A.200
B.295
C.300
D.390
【答案】C
【解析】数据块1从外设到用户工作区的总时间为105, 在这段时间中数据块2没有进行操作。在数据块1进行分析处理时,数据块2从外设到用户工作区的总时间为105, 这段时间是并行的。再加上数据块2进行处理的时间90, 总共是300, 故答案为C 。
5. 已知字符串S 为模式串t 为采用KMP 算法进行匹配,第一次出现“失配”
A.i=l, j=0
B.i=5, j=0
C.i=5, j=2
D.i=6, j=2 时,i=j=5, 则下次开始匹配时,i 和j 的值分别是( )。
【答案】C
【解析】模式匹配(KMP )算法对普通的暴力匹配的改进在于:每当匹配过程中匹配失败时,主串(本题为S )的指针(i )不需要回溯,而是利用已经得到的“部分匹配”的结果将模式串(t )向右“滑动”尽可能远的一段距离后,继续进行比较。模式串“滑动”的距离是由模式串(t )本身决定的,即t 的子串中前缀串和后缀串相等的最长长度。本题中第一次失配i=5, 字串为“abaab ”,其相等且最长的前后缀为“ab ”,一次下一个j=2。
6. 下列有关I/O接口的叙述中错误的是:( )
A. 状态端口和控制端口可以合用同一寄存器
B.I/O接口中CPU 可访问寄存器,称为I/O端口
C. 采用独立编址方式时,I/O端口地址和主存地址可能相同
D. 采用统一编址方式时,CPU 不能用访存指令访问I/O端口
【答案】D
【解析】采用统一编码方式,存储器和I/O端口共用统一的地址空间,不需要专用的I/O指令,任何对存储器数据进行操作的指令都可用于I/O端口的数据操作。所以D 错误
7. 单级中断系统中,中断服务程序内的执行顺序是( )。
I 保护现场;II 开中断;III 关中断;IV 保存断点;V 中断事件处理;VI 恢复现场;VII 中断返回
A.I →V →VI →II →VI
B.III →I →V →VII
C.Ill →IV →V →VI →VII
D.IV →I →V →VI →VII
【答案】A
【解析】程序中断有单级中断和多级中断之分,单级中断在CPU 执行中断服务程序的过程中不能被打断,即不允许中断嵌套。保存断点与关中断的任务是由硬件(中断隐指令)完成的,所以在单级中断系统中,中断服务程序内应完成的任务有:①保存现场;②中断事件处理;③恢复现场;④开中断;⑤中断返回。
8. 如果认为等待设备的状态信号是处于非工作状态(即踏步等待),那么在下面几种主机
_____主机与设备是串行工作的_____主机与设备是并行工作的_____;;与设备之间的数据传送中:
主程序与设备是并行运行的。
A. 程序查询方式
B. 程序中断方式 C.
方式 【答案】A , B , C