视频1 视频21 视频41 视频61 视频文章1 视频文章21 视频文章41 视频文章61 推荐1 推荐3 推荐5 推荐7 推荐9 推荐11 推荐13 推荐15 推荐17 推荐19 推荐21 推荐23 推荐25 推荐27 推荐29 推荐31 推荐33 推荐35 推荐37 推荐39 推荐41 推荐43 推荐45 推荐47 推荐49 关键词1 关键词101 关键词201 关键词301 关键词401 关键词501 关键词601 关键词701 关键词801 关键词901 关键词1001 关键词1101 关键词1201 关键词1301 关键词1401 关键词1501 关键词1601 关键词1701 关键词1801 关键词1901 视频扩展1 视频扩展6 视频扩展11 视频扩展16 文章1 文章201 文章401 文章601 文章801 文章1001 资讯1 资讯501 资讯1001 资讯1501 标签1 标签501 标签1001 关键词1 关键词501 关键词1001 关键词1501 专题2001
2015年计算机考研真题解析..
2025-09-30 23:29:20 责编:小OO
文档
2015年全国硕士研究生入学统一考试

计算机学科专业基础综合试题

 

一、单项选择题:140小题,每小题2分,共80分。下列每题给出的四个选项中,只有一个选项符合题目要求。请在答题卡上将所选项的字母涂黑。

1.已知程序如下:

int s(int n)

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

void main()

{ cout<< s(1); }

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

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

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

【参】D

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

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

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

【参】C

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

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

曼树的是

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

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

【参】C

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

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

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

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

【参】B

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

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

A.2            B.3            C.4            D.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,180        B.500,450,200,180

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

【参】A

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

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

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

【参】C

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

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

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

【参】B

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

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

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

【参】B

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

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

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

【参】A

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

相隔某个“增量”的元素组成的)分别进行直接插入排序,然后依次缩减增量再进行排序,待整个序列中的元素基本有序(增量足够小)时,再对全体元素进行一次直接插入排序。

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

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

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

【参】A

【考查知识点】用汇编语言等非机器语言书写好的符号程序称源程序,运行时汇编程序要

将源程序翻译成目标程序,目标程序是机器语言程序。    

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

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

【参】B

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

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

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

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

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

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

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

【参】B

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

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

A.146k             B.147K            C.148K            D.158K

【参】 B

【考查知识点】Cache 和主存的映射方式。直接映射方式地址映象规则: 主存储器中一块只能映象到Cache的一个特定的块中。(1) 主存与缓存分成相同大小的数据块。(2) 主存容量应是缓存容量的整数倍,将主存空间按缓存的容量分成区,主存中每一区的块数与缓存的总块数相等。(3) 主存中某区的一块存入缓存时只能存入缓存中块号相同的位置。

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

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

【参】 C

【考查知识点】 考察了页式虚拟存储器及TLB快表。

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

A.SRAM            B.SDRAM       C.ROM            D.FLASH

【参】B

【考查知识点】DRAM使用电容存储,所以必须隔一段时间刷新(refresh)一次,如果存储单元没有被刷新,存储的信息就会丢失。

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

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

【参】  C

【考查知识点】 考察了存储器中的多模块存储器,多体并行系统。

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

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

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

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

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

【参】 B

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

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

A.8.1ms          B.12.2ms         C.16.3ms        D.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.DIV R0,R1;(R0)/(R1)→R0

B.INT n;产生软中断

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

D.MOV R0,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.2                B.3                   C.4                D.8  

【参】C

【考查知识点】LRU算法。

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

A.减少磁盘I/O次数

B.减少平均寻道时间

C.提高磁盘数据可靠性

D.实现设备无关性

【参】A

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

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

A.1,2          B.1,3         C.2,3          D.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) 节点的数据结构定义如下:

typedef struct Node

{

    Int data;

    Struct Node * next;

}Node;

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

void DeleteABSEqualNode(Node * head)

{

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

 

    if (head == NULL)

    {

        return NULL;

    }

 

    Node * p = head;

    Node * r = head;

    while (p != NULL)

    {

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

        {                    //则删除当前节点

         r->next = p->next;

            delete p;

         p = r->next;

        }

        else               //否则,将数组中对应的元素置1,并将指针指向下一个元素

        {

         a[abs(p->data)] = 1;

            r = p;

         p = p->next;

        }

    }

    return head;

}

(4) 只遍历一次链表,所以时间复杂度为O(n),

因为申请大小为n的数组,所以空间复杂度为O(n),(n为节点绝对值的最大值)。

【考查知识点】链表的操作。

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

 

请回答下列问题

(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?

【参】

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

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

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

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

(5)⑥→⑨,⑦→④。

(6)使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,则以下指令对应的机

器代码各是什么?

1inc R1           ;  R1 + 1→R1

2shl R2,R1 ; (R1) << 1→R2

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

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

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

【参】

(1)128

(2)①    0280H,②    04A8H,③    06EEH

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

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

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

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

Code Begin

A{

While(TRUE){

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

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

将新邮件放入B的信箱;

}

}

 

B{

While(TRUE){

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

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

将新邮件放入A的信箱;

}

}

Code End

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

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

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

【参】

Semaphore mutexA=1;

Semaphore mutexB=1;

Semaphore emptyA=M;

Semaphore emptyB=N;

Semaphore fullA=0; 

Semaphore fullB=0;

Code Begin

A{

While(TRUE){

P(fullA);

P(mutexA)

Get a mail from A_mailbox;

V(mutexA);

V(fullA);

 

Answer the question and raise a question;

 

P(emptyB);

P(mutexB)

send the mail to B;

V(mutexB);

V(emptyB);

}

}

 

B{

While(TRUE){

P(fullB);

P(mutexB)

Get a mail from B_mailbox;

V(mutexB);

V(fullB);

 

Answer the question and raise a question;

 

P(emptyA);

P(mutexA)

send the mail to A;

V(mutexA);

V(emptyA);

}

}

Code End

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

显示全文
专题