2015全国硕士研究生计算机考研真题(附答案)

2015年全国硕士研究生计算机考研真题及答案一、单项选择题:140小题,每小题2分,共80分。下列每题给出的四个选项中,只有一个选项符合题目要求。请在答题卡上将所选项的字母涂黑。

1.已知程序如下:

ints(intn)

{return(n<=0)?0:s(n-1)+n;}

voidmain()

{cout<

程序运行时使用栈来保存调用过程的信息,自栈底到栈顶保存的信息一次对应的是

A.main()->S(1)->S(0)B.S(0)->S(1)->main()

main()->S(0)->S(1)D.S(1)->S(0)->main()

先序序列为a,b,c,d的不同二叉树的个数是

A.13B.14C.15D.16

3.下列选项给出的是从根分别到达两个叶节点路径上的权值序列,能属于同一棵哈夫

曼树的是

A.24,10,5和24,10,7B.24,10,5和24,12,7

C.24,10,10和24,14,11D.24,10,5和24,14,6

4.现在有一颗无重复关键字的平衡二叉树(AVL树),对其进行中序遍历可得到一个降序序列。下列关于该平衡二叉树的叙述中,正确的是

A.根节点的度一定为2B.树中最小元素一定是叶节点

C.最后插入的元素一定是叶节点D.树中最大元素一定是无左子树

5.设有向图G=(V,E),顶点集V={V0,V1,V2,V3},边集E={,,,},若从顶点V0开始对图进行深度优先遍历,则可能得到的不同遍历序列个数是

A.2B.3C.4D.5

6.求下面带权图的最小(代价)生成树时,可能是克鲁斯卡(kruskal)算法第二次选中但不是普里姆(Prim)算法(从V4开始)第2次选中的边是

A.(V1,V3)B.(V1,V4)C.(V2,V3)D.(V3,V4)

7.下列选项中,不能构成折半查找中关键字比较序列的是

A.500,200,450,180B.500,450,200,180

C.180,500,200,450D.180,200,500,450

8.已知字符串S为“abaabaabacacaabaabcc”.模式串t为“abaabc”,采用KMP算法进行匹配,第一次出现“失配”(s[i]!=t[i])时,i=j=5,则下次开始匹配时,i和j的值分别是

A.i=1,j=0B.i=5,j=0C.i=5,j=2D.i=6,j=2

9.下列排序算法中元素的移动次数和关键字的初始排列次序无关的是

A.直接插入排序B.起泡排序C.基数排序D.快速排序

10.已知小根堆为8,15,10,21,34,16,12,删除关键字8之后需重建堆,在此过程中,关键字之间的比较数是

A.1B.2C.3D.4

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

A.直接插入排序B.折半插入排序C.快速排序D.归并排序

12.计算机硬件能够直接执行的是()

Ⅰ.机器语言程序Ⅱ.汇编语言程序Ⅲ.硬件描述语言程序

A.仅ⅠB.仅ⅠⅡC.仅ⅠⅢD.ⅠⅡⅢ

13.由3个“1”和5个“0”组成的8位二进制补码,能表示的最小整数是()

A.-126B.-125C.-32D.-3

14.下列有关浮点数加减运算的叙述中,正确的是()

Ⅰ.对阶操作不会引起阶码上溢或下溢

Ⅱ.右规和尾数舍入都可能引起阶码上溢

Ⅲ.左规时可能引起阶码下溢

Ⅳ.尾数溢出时结果不一定溢出

A.仅ⅡⅢB.仅ⅠⅡⅣC.仅ⅠⅢⅣD.ⅠⅡⅢⅣ

15.假定主存地址为32位,按字节编址,主存和Cache之间采用直接映射方式,主存块大小为4个字,每字32位,采用回写(WriteBack)方式,则能存放4K字数据的Cache的总容量的位数至少是()

A.146kB.147KC.148KD.158K

16.假定编译器将赋值语句“x=x+3;”转换为指令”addxaddt,3”,其中xaddt是x对应的存储单元地址,若执行该指令的计算机采用页式虚拟存储管理方式,并配有相应的TLB,且Cache使用直写(WriteThrough)方式,则完成该指令功能需要访问主存的次数至少是()

A.0B.1C.2D.3

17.下列存储器中,在工作期间需要周期性刷新的是()

A.SRAMB.SDRAMC.ROMD.FLASH

18.某计算机使用4体交叉存储器,假定在存储器总线上出现的主存地址(十进制)序列为8005,8006,8007,8008,8001,8002,8003,8004,8000,则可能发生发生缓存冲突的地址对是()

A.8004、8008B.8002、8007C.8001、8008D.8000、8004

19.下列有关总线定时的叙述中,错误的是()

A.异步通信方式中,全互锁协议最慢

B.异步通信方式中,非互锁协议的可靠性最差

C.同步通信方式中,同步时钟信号可由多设备提供

D.半同步通信方式中,握手信号的采样由同步时钟控制

20.若磁盘转速为7200转/分,平均寻道时间为8ms,每个磁道包含1000个扇区,则访问一个扇区的平均存取时间大约是()

A.8.1msB.12.2msC.16.3msD.20.5ms

21.在采用中断I/O方式控制打印输出的情况下,CPU和打印控制接口中的I/O端口之间交换的信息不可能是()

A.打印字符B.主存地址C.设备状态D.控制命令

22.内部异常(内中断)可分为故障(fault)、陷阱(trap)和终止(abort)三类。下列有关内部异常的叙述中,错误的()

A.内部异常的产生与当前执行指令相关

B.内部异常的检测由CPU内部逻辑实现

C.内部异常的响应发生在指令执行过程中

D.内部异常处理的返回到发生异常的指令继续执行

23.处理外部中断时,应该由操作系统保存的是()

A.程序计数器(PC)的内容B.通用寄存器的内容

C.块表(TLB)的内容D.Cache中的内容

考研资料,复习题试题答案www.wendangku.net

A.2B.3C.4D.8

28.在系统内存中设置磁盘缓冲区的主要目的是()

A.减少磁盘I/O次数

B.减少平均寻道时间

C.提高磁盘数据可靠性

D.实现设备无关性

29.在文件的索引节点中存放直接索引指针10个,一级二级索引指针各1个,磁盘块大小为1KB。每个索引指针占4个字节。若某个文件的索引节点已在内存中,到把该文件的偏移量(按字节编址)为1234和307400处所在的磁盘块读入内存。需访问的磁盘块个数分别是()

A.1,2B.1,3C.2,3D.2,4

30.在请求分页系统中,页面分配策略与页面置换策略不能组合使用的是()

A.可变分配,全局置换B.可变分配,局部置换

C.固定分配,全局置换D.固定分配,局部置换

二、综合应用题:41~47小题,共70分。

41.用单链表保存m个整数,节点的结构为(data,link),且|data|

p="">

表中绝对值相等的节点,仅保留第一次出现的节点而删除其余绝对值相等的节点。<>

例如若给定的单链表head如下

删除节点后的head为

要求

(1)给出算法的基本思想

(2)使用c或c++语言,给出单链表节点的数据类型定义。

(3)根据设计思想,采用c或c++语言描述算法,关键之处给出注释。

(4)说明所涉及算法的时间复杂度和空间复杂度。

42.已知有5个顶点的图G如下图所示

请回答下列问题

(1)写出图G的邻接矩阵A(行、列下标从0开始)

(2)求A2,矩阵A2中位于0行3列元素值的含义是什么?

(3)若已知具有n(n>=2)个顶点的邻接矩阵为B,则Bm(2<=m<=n)非零元素的含义是什么?

43.(13分)某16位计算机主存按字节编码。存取单位为16位;采用16位定长指令格式;CPU采用单总线结构,主要部分如下图所示。图中R0~R3为通用寄存器;T为暂存器;SR为移位寄存器,可实现直送(mov)、左移一位(left)、右移一位(right)3种操作,控制信号为Srop,SR的输出信号Srout控制;ALU可实现直送A(mova)、A加B(add)、A减B(sub)、A与B(and)、A或B(or)、非A(not)、A加1(inc)7种操作,控制信号为ALUop。

考研资料,复习题试题答案www.wendangku.net

请回答下列问题。

(1)图中哪些寄存器是程序员可见的?为何要设置暂存器T?

(2)控制信号ALUop和SRop的位数至少各是多少?

(3)控制信号Srout所控制邮件的名称或作用是什么?

(4)端点①~⑨中,哪些端点须连接到控制部件的输出端?

(5)为完善单总线数据通路,需要在端点①~⑨中相应的端点之间添加必要的连线。写出连线的起点和终点,以正确表示数据的流动方向。

(6)为什么二路选择器MUX的一个输入端是2?

44.(10分)题43中描述的计算机,其部分指令执行过程的控制信号如如题44图a所示。

专注中国名校保(考)研考博辅导权威

www.ssqbedu.com

题44图a部分指令控制信号

该机指令格式如题44图b

所示,支持寄存器直接和寄存器间接两种寻址方式,寻址方式位分别为0和1,通用寄存器R0~R3的编号分别为0、1、2和3。题44图b指令格式

请回答下列问题。

(1)该机的指令系统最多可定义多少条指令?

(2)假定inc、shl和sub指令的操作码分别为01H、02H和03H,则以下指令对应的机

专注中国名校保(考)研考博辅导权威

www.ssqbedu.com

将新邮件放入B的信箱;

}

}

B{

While(TRUE){

从B的信箱中取出一个邮件;

回答问题并提出一个新问题;

将新邮件放入A的信箱;

}

}

CodeEnd

当信箱不为空时,辩论者才能从信箱中取邮件,否则等待。

当信箱不满时,辩论者才能将新邮件放入信箱,否则等待。

请添加必要的信号量和P、V(或wait,signed)操作,以实现上述过程的同步,要求写出完整过程,并说明信号量的含义和初值。

一、单项选择题:140小题,每小题2分,共80分。下列每题给出的四个选项中,只有

一个选项符合题目要求。请在答题卡上将所选项的字母涂黑。

1.已知程序如下:

ints(intn)

{return(n<=0)?0:s(n-1)+n;}

voidmain()

{cout<

程序运行时使用栈来保存调用过程的信息,自栈底到栈顶保存的信息一次对应的是

A.main()->S(1)->S(0)B.S(0)->S(1)->main()

main()->S(0)->S(1)D.S(1)->S(0)->main()

【参考答案】D

【考查知识点】栈的基本概念和函数调用的原理。

先序序列为a,b,c,d的不同二叉树的个数是

A.13B.14C.15D.16

【参考答案】C

【考查知识点】二叉树的基本概念。

3.下列选项给出的是从根分别到达两个叶节点路径上的权值序列,能属于同一棵哈夫曼树的是

A.24,10,5和24,10,7B.24,10,5和24,12,7

C.24,10,10和24,14,11D.24,10,5和24,14,6

【参考答案】C

【考查知识点】哈夫曼树的原理。

4.现在有一颗无重复关键字的平衡二叉树(AVL树),对其进行中序遍历可得到一个降序序列。下列关于该平衡二叉树的叙述中,正确的是

A.根节点的度一定为2B.树中最小元素一定是叶节点

C.最后插入的元素一定是叶节点D.树中最大元素一定是无左子树

【参考答案】B

【考查知识点】树的中序遍历和AVL树的基本概念。

5.设有向图G=(V,E),顶点集V={V0,V1,V2,V3},边集E={,,,},若从顶点V0开始对图进行深度优先遍历,则可能得到的不同遍历序列个数是

A.2B.3C.4D.5

【参考答案】D

【考查知识点】图的深度优先遍历。

6.求下面带权图的最小(代价)生成树时,可能是克鲁斯卡(kruskal)算法第二次选中但不是普里姆(Prim)算法(从V4开始)第2次选中的边是

A.(V1,V3)B.(V1,V4)C.(V2,V3)

D.(V3,V4)

【参考答案】A

【考查知识点】最小生成树算法的Prim算法和Kruskal算法。

7.下列选项中,不能构成折半查找中关键字比较序列的是

A.500,200,450,180B.500,450,200,180

C.180,500,200,450D.180,200,500,450

【参考答案】A

【考查知识点】二分查找算法。

8.已知字符串S为“abaabaabacacaabaabcc”.模式串t为“abaabc”,采用KMP算法进行匹配,第一次出现“失配”(s[i]!=t[i])时,i=j=5,则下次开始匹配时,i和j的值分别是

A.i=1,j=0B.i=5,j=0C.i=5,j=2D.i=6,j=2

【参考答案】C

【考查知识点】模式匹配(KMP)算法。

9.下列排序算法中元素的移动次数和关键字的初始排列次序无关的是

A.直接插入排序B.起泡排序C.基数排序D.快速排序

【参考答案】B

【考查知识点】几种排序算法的比较。

10.已知小根堆为8,15,10,21,34,16,12,删除关键字8之后需重建堆,在此过程中,关键字之间的比较数是

A.1B.2C.3D.4

【参考答案】B

【考查知识点】最小堆的概念和最小堆的重建。

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

A.直接插入排序B.折半插入排序C.快速排序D.归并排序

【参考答案】A

【考查知识点】希尔排序基本思想是:先将整个待排元素序列分割成若干个子序列(由

相隔某个“增量”的元素组成的)分别进行直接插入排序,然后依次缩减增量再进行排序,

待整个序列中的元素基本有序(增量足够小)时,再对全体元素进行一次直接插入排序。

12.计算机硬件能够直接执行的是()

Ⅰ.机器语言程序Ⅱ.汇编语言程序Ⅲ.硬件描述语言程序

A.仅ⅠB.仅ⅠⅡC.仅ⅠⅢD.ⅠⅡⅢ

【参考答案】A

【考查知识点】用汇编语言等非机器语言书写好的符号程序称源程序,运行时汇编程序要将源程序翻译成目标程序,目标程序是机器语言程序。

13.由3个“1”和5个“0”组成的8位二进制补码,能表示的最小整数是()

A.-126B.-125C.-32D.-3

【参考答案】B

【考查知识点】二进制的补码表示。

14.下列有关浮点数加减运算的叙述中,正确的是()

Ⅰ.对阶操作不会引起阶码上溢或下溢

Ⅱ.右规和尾数舍入都可能引起阶码上溢

Ⅲ.左规时可能引起阶码下溢

Ⅳ.尾数溢出时结果不一定溢出

A.仅ⅡⅢB.仅ⅠⅡⅣC.仅ⅠⅢⅣD.ⅠⅡⅢⅣ

【参考答案】B

【考查知识点】浮点数的加减运算。

15.假定主存地址为32位,按字节编址,主存和Cache之间采用直接映射方式,主存块大小为4个字,每字32位,采用回写(WriteBack)方式,则能存放4K字数据的Cache的总容量的位数至少是()

A.146kB.147KC.148KD.158K

D.半同步通信方式中,握手信号的采样由同步时钟控制

【参考答案】B

【考查知识点】考察了总线操作和定时,主要是同步定时与异步定时的定义及其特点。

20.若磁盘转速为7200转/分,平均寻道时间为8ms,每个磁道包含1000个扇区,则访问一个扇区的平均存取时间大约是()

A.8.1msB.12.2msC.16.3msD.20.5ms

【参考答案】B

【考查知识点】磁盘访问时间计算。

21.在采用中断I/O方式控制打印输出的情况下,CPU和打印控制接口中的I/O端口之间交换的信息不可能是()

A.打印字符B.主存地址C.设备状态D.控制命令

【参考答案】A

【考查知识点】程序中断I/O方式。

22.内部异常(内中断)可分为故障(fault)、陷阱(trap)和终止(abort)三类。下列有关内部异常的叙述中,错误的()

A.内部异常的产生与当前执行指令相关

B.内部异常的检测由CPU内部逻辑实现

C.内部异常的响应发生在指令执行过程中

D.内部异常处理的返回到发生异常的指令继续执行

【参考答案】A

【考查知识点】内部异常概念。

23.处理外部中断时,应该由操作系统保存的是()

A.程序计数器(PC)的内容B.通用寄存器的内容

C.块表(TLB)的内容D.Cache中的内容

【参考答案】A

【考查知识点】外部中断处理过程。

24.假定下列指令已装入指令寄存器。则执行时不可能导致CPU从用户态变为内核态(系统态)的是()

A.DIVR0,R1;(R0)/(R1)→R0

B.INTn;产生软中断

C.NOTR0;寄存器R0的内容取非

D.MOVR0,addr;把地址处的内存数据放入寄存器R0中

【参考答案】C

【考查知识点】CPU用户态和内核态概念。

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

A.执行P(wait)操作B.申请内存失败

C.启动I/O设备D.被高优先级进程抢占

【参考答案】D

【考查知识点】进程间各状态的转化。

26.若系统S1采用死锁避免方法,S2采用死锁检测方法,下列叙述中正确的是()Ⅰ.S1会限制用户申请资源的顺序

Ⅱ.S1需要进行所需资源总量信息,而S2不需要

Ⅲ.S1不会给可能导致死锁的进程分配资源,S2会

A.仅ⅠⅡB.仅ⅡⅢC.仅ⅠⅢD.ⅠⅡⅢ

【参考答案】C

【考查知识点】死锁相关概念。

27.系统为某进程分配了4个页框,该进程已访问的页号序列为2,0,2,9,3,4,2,8,2,3,8,4,5,若进程要访问的下一页的页号为7,依据LRU算法,应淘汰页的页号是()

A.2B.3C.4D.8

【参考答案】C

【考查知识点】LRU算法。

28.在系统内存中设置磁盘缓冲区的主要目的是()

A.减少磁盘I/O次数

B.减少平均寻道时间

C.提高磁盘数据可靠性

D.实现设备无关性

【参考答案】A

【考查知识点】磁盘和内存速度的差异。

29.在文件的索引节点中存放直接索引指针10个,一级二级索引指针各1个,磁盘块大小为1KB。每个索引指针占4个字节。若某个文件的索引节点已在内存中,到把该文件的偏移量(按字节编址)为1234和307400处所在的磁盘块读入内存。需访问的磁盘块个数分别是()

A.1,2B.1,3C.2,3D.2,4

【参考答案】D

【考查知识点】文件索引相关概念。

30.在请求分页系统中,页面分配策略与页面置换策略不能组合使用的是()

A.可变分配,全局置换B.可变分配,局部置换

C.固定分配,全局置换D.固定分配,局部置换

【参考答案】D

【考查知识点】页面分配策略和页面置换策略的概念和相应的方法。

二、综合应用题:41~47小题,共70分。

41.用单链表保存m个整数,节点的结构为(data,link),且|data|

例如若给定的单链表head

如下

删除节点后的head

要求

(1)给出算法的基本思想

(2)使用c或c++语言,给出单链表节点的数据类型定义。

(3)根据设计思想,采用c或c++语言描述算法,关键之处给出注释。

(4)说明所涉及算法的时间复杂度和空间复杂度。

【参考答案】

(1)算法思想:

定义一个大小为N的数组,初始化为0.在遍历链表的同时将数组中索引值为节点的值的绝对值的元素置1.如果此元素已经为1,说明此节点之前已经有与此节点的值的绝对值相等的节点,需将此节点删除。

(2)节点的数据结构定义如下:

typedefstructNode

{

Intdata;

StructNode*next;

}Node;

(3)inta[n];//全局数组标志节点的绝对值的值是否出现过

voidDeleteABSEqualNode(Node*head)

{

memset(a,0,n);//初始化为0

if(head==NULL)

{

returnNULL;

}

Node*p=head;

Node*r=head;

while(p!=NULL)

{

if(a[abs(p->data)]==1)//如果此绝对值已经在节点值的绝对值中出现过{//则删除当前节点

r->next=p->next;

deletep;

请回答下列问题

(1)写出图G的邻接矩阵A(行、列下标从0开始)

(2)求A2,矩阵A2中位于0行3列元素值的含义是什么?

(3)若已知具有n(n>=2)个顶点的邻接矩阵为B,则Bm(2<=m<=n)非零元素的含义是什么?

【参考答案】

(1)邻接矩阵为

(2)

0行3列的元素的含义是顶点0到顶点3的最短距离为2.

(3)Bm中非零元素的含义是:假设此顶点位于i行j列,如果i==j,则表示i顶点到自己的距离为0;如果i≠j,则表示顶点i到达不了顶点j。

【考查知识点】邻接矩阵的概念,最短路径。

43.(13分)某16位计算机主存按字节编码。存取单位为16位;采用16位定长指令格式;CPU采用单总线结构,主要部分如下图所示。图中R0~R3为通用寄存器;T为暂存器;SR为移位寄存器,可实现直送(mov)、左移一位(left)、右移一位(right)3种操作,控制信号为Srop,SR的输出信号Srout控制;ALU可实现直送A(mova)、A加B(add)、A减B(sub)、A与B(and)、A或B(or)、非A(not)、A加1(inc)7种操作,控制信号为ALUop。

请回答下列问题。

(1)图中哪些寄存器是程序员可见的?为何要设置暂存器T?

(2)控制信号ALUop和SRop的位数至少各是多少?

(3)控制信号Srout所控制邮件的名称或作用是什么?

(4)端点①~⑨中,哪些端点须连接到控制部件的输出端?

(5)为完善单总线数据通路,需要在端点①~⑨中相应的端点之间添加必要的连线。写出连线的起点和终点,以正确表示数据的流动方向。

(6)为什么二路选择器MUX的一个输入端是2?

【参考答案】

图中程序员可见的寄存器有通用寄存器R0~R3和程序计数器PC;设置暂存器T用于暂存数据总线发送的数据。

ALUop和SRop的位数分别为3,2。

Srout所控制的部件作用是控制计算机运算结果的输出。

须连接到控制部件的输出端端点有①②③⑤⑧。

⑥→⑨,⑦→④。

使PC自增2以获取下一条指令地址。

【考查知识点】寄存器相关概念及寄存器的操作,单总线结构

44.(10分)题43中描述的计算机,其部分指令执行过程的控制信号如如题44图a

所示。题44图a部分指令控制信号

该机指令格式如题44图b所示,支持寄存器直接和寄存器间接两种寻址方式,寻址方式位分别为0和1,通用寄存器R0~R3的编号分别为0、1、2和

3。

题44图b指令格式

请回答下列问题。

(1)该机的指令系统最多可定义多少条指令?

(2)假定inc、shl和sub指令的操作码分别为01H、02H和03H,则以下指令对应的机器代码各是什么?

incR1;R1+1→R1

shlR2,R1;(R1)<<1→R2

③subR3,(R1),R2;((R1))–(R2)→R3

(3)假定寄存器X的输入和输出控制信号分别为Xin和Xout,其值为1表示有效,为0表示无效(例如,PCout=1表示PC内容送总线);存储器控制信号为MEMop,用于控制存储器的读(read)和写(write)操作。写出题44图a中标号①⑧处的控制信号或控制信号的取值。

(4)指令“subR1,R3,(R2)”和“incR1”的执行阶段至少各需要多少个时钟周期?

【参考答案】

128

①0280H,②04A8H,③06EEH

①0,②mov,③mova,④left,⑤read,⑥sub,⑦mov,⑧Srout。

至少各需要8和7个时钟周期。

【考查知识点】指令的格式与寻址方式,指令执行过程

45.有A、B两人通过信箱进行辩论,每人都从自己的信箱中取得对方的问题。将答案和向对方提出的新问题组成一个邮件放入对方的邮箱中,设A的信箱最多放M个邮件,B的信箱最多放N个邮件。初始时A的信箱中有x个邮件(0

A、B两人操作过程:

CodeBegin

A{

While(TRUE){

从A的信箱中取出一个邮件;

回答问题并提出一个新问题;

将新邮件放入B的信箱;

}

}

B{

While(TRUE){

从B的信箱中取出一个邮件;

回答问题并提出一个新问题;

将新邮件放入A的信箱;

}

}

CodeEnd

当信箱不为空时,辩论者才能从信箱中取邮件,否则等待。

当信箱不满时,辩论者才能将新邮件放入信箱,否则等待。

请添加必要的信号量和P、V(或wait,signed)操作,以实现上述过程的同步,要求写出完整过程,并说明信号量的含义和初值。

【参考答案】

SemaphoremutexA=1;

SemaphoremutexB=1;

SemaphoreemptyA=M;

SemaphoreemptyB=N;

SemaphorefullA=0;

SemaphorefullB=0;

CodeBegin

A{

P(emptyA);

P(mutexA)

sendthemailtoA;

V(mutexA);

V(emptyA);

}

}

CodeEnd

【考查知识点】考察了利用信号量进程同步问题。

你可能感兴趣的:(计算机考研,计算机考研试题)