您当前位置: 唯学网 » 统招研究生 » 试题专题

2015年考研计算机专业基础综合真题及分析(3)

来源:唯学网•教育培训(www.vixue.com)  【唯学网 • 中国教育电子商务平台】 加入收藏

【参考答案】

(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如下图所示

图G

图G

请回答下列问题

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

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

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

【参考答案】

(1)略

(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 指令格式

图b

图b

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


指令格式

指令格式

请回答下列问题。

0% (0)
0% (10)
已有条评论
新闻浏览排行