2016年计算机408统考真题解析.pdf
《2016年计算机408统考真题解析.pdf》由会员分享,可在线阅读,更多相关《2016年计算机408统考真题解析.pdf(12页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、2016年计算机学科专业基础综合试题参考答案一、单项选择题I.D 2.9.B 10.17.C 18.25:C 26.33.C 34.I.解析:根据存储状态,单链表的结构如下图所示。DABAC.l975 31l23 CDB BD 4.12.20.28.36.BCA DB 5.13.21.29.37.CDAAB 6.14.22.30.38.DAACD 7.15.23.31.39.BCADC 8.16.24.32.40.BCBAC 1008H 1000H 1010H 101411 三二其中“链接地址”是指结点next所指的内存地址。当结点f插入后,a指向f,f指向e,e指向b。显然a、e和f的“链接
2、地址”分别是f、b和e的内存地址,即1014H、1004H和1010H。2.解析:此类题的解题思路万变不离其宗,无论是链表的插入还是删除都必须保证不断链。3.解析:在确保队列先进先出原则的前提下。根据题意具体分析:入队顺序为8,4,2,5,3,9,1,6,7,出队顺序为19。入口和出口之间有多个队列(n条轨道),且每个队列(轨道)可容纳多个元素(多列列车)。如此分析:显然先入队的元素必须小千后入队的元素(如果8和4入同一队列,8在前4在后,那么出队时只能是8在前4在后),这样8入队列1,4入队列2,2入队列3,5 入队列2(按照前面的原则“大的元素在小的元素后面”也可以将5入队列3,但这时剩下
3、的元素3就必须放到一个新的队列里面,无法确保”至少“,本应该是将5入队列2,再将3入队列3,不增加新队列的情况下,可以满足题意“至少”的要求),3入队列3,9入队列1,这时共占了3个队列,后面还有元素1,直接再占用一个新的队列4,1从队列4出队后,剩下的元素6和7或者入队到队列2或者入队到队列3(为简单起见我们不妨设n个队列的序号分别为1,2,n),这样就可以满足题目的要求。综上,共占用了4个队列。当然还有其他的入队出队的情况,请考生们自己推演。但要确保满足:O队列中后面的元素大千前面的元素;确保占用最少(即满足题目中的“至少)的队列。4.解析:三对角矩阵如下图所示。01,1 a1,2 a2,
4、I a2.2 a2,3。aJ,2 a3,3 03,4。a n-1,n-2 a n-l,n-1 a n一l,na n,n-1 a n,n 采用压缩存储,将3条对角线上的元素按行优先方式存放在一维数组B中,且a1,1存放于BO中,其存储形式如下所示:I 01.1 I。1;1.I 02,1 I 02,2 I 02,3 I I an-1,n I 0n.n-l I 0n,n I 可以计算矩阵A中3条对角线上的元素a;j Cli,jn,li-jll)在一维数组B中存放的下标为k=2i+j-3。解法一:针对该题,仅需将数字逐一代入公式里面即可:k=2x30+30-3=87,结果为 87。解法二:观察上图的三
5、对角矩阵不难发现,第一行有两个元素,剩下的在元素m30,Jo所在行之前的28行(注意下标lilOO、1冬;100)中每行都有3个元素,而m30,Jo之前仅有一个元素m30,29,那么不难发现元素m30,30在数组N中的下标是:2+28x3+2-1=87。【注意】矩阵和数组的下标是从 0或1 开始的(如矩阵可能从ao,o或a1,1开始,数组可能从BO或Bl开始),这时就需要适时调整计算方法(这个方法无非是针对上面提到的公式k=2x i+j-3多计算1或少计算1的问题)。5.解析:解法一:树有一个很重要的性质:在n个结点的树中有n-1条边,“那么对千每棵树,其结点数比边数多1。题中的森林中的结点数
6、比边数多10(即25-15=10),显然共有10棵树。解法二:若考生再仔细分析可发现,此题也是考察图的某些方面的性质:生成树和生成森林。此时对于图的生成树有一个重要的性质:若图中顶点数为n,则它的生成树含有n一1条边。对比解法一中树的性质,不难发现两种解法都利用到了“树中结点数比边数多 1的性质,接下来的分析如解法一。6.解析:对于本题,只需按深度优先遍历的策略进行遍历即可。对千选项A:先访问Vi,然后访问与V1邻接且未被访问的任一顶点(满足的有V2、V3和Vs),此时访问Vs,然后从Vs出发,访问与Vs邻接且未被访问的任一顶点(满足的只有V4),然后从V4出发,访问与V4邻接且未被访问的任一
7、顶点(满足的只有V立然后从V3出发,访问与V3邻接且未被访问的任一顶点(满足的只有V2),结束遍历。选项B和C的分析方法与选项A相同,不再赘述。对千选项D,首先访问Vi,然后从V1出发,访问与V1邻接且未被访问的任一顶点(满足的有V2、V3和Vs),然后从巧出发,访问与V2邻接且未被访问的任一顶点(满足的只有Vs),按规则本应该访问Vs,但选项D却访问V3,因此D错误。7.解析:根据拓扑排序的规则,输出每个顶点的同时还要删除以它为起点的边,这样对各顶点和边都要进行遍历,故拓扑排序的时间复杂度为O(n+e)。8.解析:根据Dijkstra算法,从顶点1到其余各顶点的最短路径如下表所示。顶点第1趟
8、第2趟第3趟第4趟第5趟5 2 Vt一V2,v1-v2=3 I.00 II 11 11 4 11一Vs-:+V4,Vt一V5一V4v,一V5一V4V1一V5-+V45沁立沪,.忒:沁.MJ:.J、芯0-+从4,.V.s.cc=9 9 6 vi-vs一V6v,一Vs一Y6v1-vs-v6 集合Sl,5 1,5,2 I,5,2,3 I,5,2,3,6!,5,2,3,6,4 9.解析:此题为送分题。该程序采用跳跃式的顺利查找法查找升序数组中的X,显然是x越靠前,比较次数才会越少。10.解析:由于B+树的所有叶结点中包含了全部的关键字信息,且叶结点本身依关键字从小到大顺序链接,可以进行顺序查找,而B树
9、不支持顺序查找(只支持多路查找)。11.解析:外部排序指待排序文件较大,内存一次性放不下,需存放在外部介质中。外部排序通常采用归并排序法。选项A、B、C都是内部排序的方法。12.解析:翻译程序是指把高级语言源程序转换成机器语言程序(目标代码)的软件。翻译程序有两种:一种是编译程序,它将高级语言源程序一次全部翻译成目标程序,每次执行程序时,只要执行目标程序,因此,只要源程序不变,就无须重新编译。另一种是解释程序,它将源程序的一条语旬翻译成对应的机器目标代码,并立即执行,然后翻译下一条源程序语句并执行,直至所有源程序语句全部被翻译并执行完。所以解释程序的执行过程是翻译一句执行一句,并 且不会生成目
10、标程序。汇编程序也是一种语言翻译程序,它把汇编语言源程序翻译为机器语言程序。汇编语言是一种面向机器的低级语言,是机器语言的符号表示,与机器语言一一对应。13.解析:结合题干及选项可知,short为16位。因C语言中的数据在内存中为补码表示形式,si对应的补码二进制表示为:1000 0000 0000 0001B,最前面的一位 1 为符号位,表示负数,即-32767。由signed型转化为等长unsigned型数据时,符号位成为数据的一部分,也就是说,负数转化为无符号数(即正数),其数值将发生变化。Usi对应的补码二进制表示与si的表示相同,但表示正数,为32769。14.解析:大端方式:一个字
11、中的高位字节(Byte)存放在内存中这个字区域的低地址处。小端方式:一个字中的低位字节(Byte)存放在内存中这个字区域的低地址处。依此分析,各字节的存储分配如下表所示。地址0000 8040H OO(i0.8041H 内容88H 77H 地址0000 8044H 00008045H 内容44H 33H 从而存储单元0000 80 4 6 H 中存放的是22H。15.解析:0000.804.ZH 00008043H 66H 55H 0000 8046H 00008047H 22H l!H 分析语旬ak=ak+32:首先读取ak需要访问一次ak,之后将结果赋值给ak需要访问一次,共访问两次。第一
12、次访问ak未命中,并将该字所在的主存块调入 Cache对应的块中,对于该主存块中的4个整数的两次访问中只在访问第一次的第一个元素时发生缺失,其他的7次访问中全部命中,故该程序段执行过程中访问数组a的Cache缺失率约为1/8(即 1 2.5%)。16.解析:SFFF-4 000+1=2000H,即ROM区容量为i3B=8KB(2000H=2 x163=i3),RAM区容量为56KB(64KB-8KB=56KB),则需要 8Kx4位的SRAM芯片的数量为14(56KB/8Kx4位=14)。17.解析:变址寻址中,有效地址EA等于指令字中的形式地址 D 与变址寄存器I的内容相加之和,即EA=(I)
13、+D。间接寻址是相对于直接寻址而言的,指令的地址字段给出的形式地址不是操作数的真正地址,而是操作数地址的地址,即EA=(D)。从而该 操作数的有效地址是(I)+D)。18.解析:程序计数器(PC)给出下一条指令字的访存地址(指令在内存中的地址),取决于存储器的字数(4GB/32bit=230),故程序计数器(PC)的位数至少是30位;指令寄存器CIR)用于接收取得的指令,取决于指令字长(32位),故指令寄存器CIR)的位数至少为 32位。19.解析:数据冒险,即数据相关,指在一个程序中存在必须等前一条指令执行完才能执行后一条指令的情况,则这两条指令即为数据相关。当多条指令重叠处理时就会发生冲突
14、。首先这两条指令发生写后读 相关,并且两条指令在流水线中执行情况(发生数据冒险)如下表所示。1 2 3 4 5 6 7 12 取指译码I读寄存器运算访存写回I3 取指译码读寄存器运算访存写回指令12在时钟5 时将结果写入寄存器(R5),但指令13在时钟 3时读寄存器(R5)。本来指令 12应先写入R5,指令13后读 R5,结果变成指令13先读R5,指令12后写入R5,因而发生数据冲突。20.解析:单周期处理器即指所有指令的指令周期为一个时钟周期,D正确。因为每条指令的CPI为I,要考虑比较慢的指令,所以处理器的时钟频率较低,B正确。单总线结构将 CPU、主存、1/0设备都挂在一组总线上,允许1
15、/0设备之间、1/0设备与主存之间直接交换信息,但多个部件只能争用唯一的总线,且不支持并发传送操作。单周期处理器并不是可以采用单总线结构数据通路,故 A错误。控制信号即指 PC 中的内容,PC用来存放当前欲执行指令的地址,可以自动+1以形成下一条指令的地址。在指令执行过程中控制信号不变化。21.解析:初看可能会觉得 A正确,并行总线传输通常比串行总线传输速度快,但这不是绝对的。在实际时钟频率比较低的情况下,并行总线因为可以同时传输若干比特,速率确实比串行总线快。但是,随着技术的发展,时钟频率越来越高,并行导线之间的相互干扰越来越严重,当时钟频率提高到一定程度时,传输的数据已经无法恢复。而串行总
16、线因为导线少,线间干扰容易控制,反而可以通过不断提高时钟频率来提高传输速率,A错误。总线复用是指一种信号线在不同的时间传输不同的信息。可以使用较少的线路传输更多的信息,从而节省了空间和成本。故B正确。突发(猝发)传输是在一个总线周期中,可以传输多个存储地址连续的数据,即一次传输一个地址和一批地址连续的数据,C正确。分离事务通信即总线复用的一种,相比单一的传输线路可以提高总线的利用率,D正确。22.解析:中断是指来自CPU执行指令以外事件的发生,如设备发出的1/0结束中断,表示设备输入输出处理已经完成,希望处理机能够向设备发出下一个输入输出请求,同时让完成输入输出后的程序继续运行。时钟中断,表示
17、一个固定的时间片已到,让处理机处理计时、启动定时运行的任务等。这一类中断通常是与当前程序运行无关的事件,即它们与当前处理机运行的程序无关。异常也称内中断、例外或陷入(Trap),指源自CPU执行指令内部的事件,如程序的非法操作码、地址越界、算术溢出、虚存系统的缺页以及专门的陷入指令等引起的事件。A错误。23.解析:批处理系统中,作业执行时用户无法干预其运行,只能通过事先编制作业控制说明书来间接干预,缺少交互能力,也因此才发展出分时系统,I错误。批处理系统按发展历程又分为单道批处理系统、多道批处理系统,II正确。多道程序设计技术允许同时把多个程序放入内存,并允许它们交替在CPU 中运行,它们共享
18、系统中的各种硬、软件资源,当一道程序因1/0请求而暂停运行时,CPU便立即转去运行另一道程序,即多道批处理系统的1/0设备可与CPU并行工作,这都是借助于中断技术实现的,III正确。24.解析:这类调度题目最好画图。因 CPU、输入设备、输出设备都只有一个,因此各操作步骤不能重叠,画出运行时的甘特图后就能清楚地看到不同作业间的时序关系,如下表所示。作业时间I 1 I 2 I 3 I 4 I 5输入计算13 I 14 I 15 I 16 I 17 2 输入输出3输入计算输出25.解析:对于本题,先满足一个进程的资源需求,再看其他进程是否能出现死锁状态。因为 p4只申请一个资源,当将R2分配给p4
19、后,p4执行完后将R2释放,这时使得系统满足死锁的条件是R1分配给P1 R2分配给P2 R3分配给p3(或者R2分配给P1 R3分配给P2 R,分配给p3)。穷举其他情况如Pt申请的资源民和R2,先都分配给pl,运行完 并释放占有的资源后,可以分别将R1、R2和R3分配给p3、p4和P2 也满足系统死锁的条件。各种情况需要使得处于死锁状态的进程数至少为3。26.解析:改进型的CLOCK置换算法执行的步骤如下:1)从指针的当前位置开始,扫描帧缓冲区。在这次扫描过程中,对使用位不做任何修改。选择遇到的第一个帧(A=O,M=O)用于替换。2)如果第 I)步失败,则重新扫描,查找(A=O,M=I)的帧
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 2016 计算机 408 统考 题解
限制150内