2009年(408)计算机学科专业基础综合试题

科目组合

计算机: 数据结构 、计算机组成原理 、操作系统 、计算机网络

02: 05: 18
答题卡
得分 117/150
答对题目数 35/47
评价

答题情况分析报告

正确: 35
错误: 12
未答: 0
总分: 117/150
正确率 74.5%
第1题 数据结构 单选题 题目链接

为解决计算机与打印机之间速度不匹配的问题,通常设置一个打印数据缓冲区,主机将要输出的数据依次写入该缓冲区,而打印机则依次从该缓冲区中取出数据。该缓冲区的逻辑结构应该是( )。

A. 栈      B. 队列      C. 树      D. 图

正确答案:B 你的答案: 正确 正确率:91%
点击此处查看本题答案

第2题 数据结构 单选题 题目链接

设栈 S 和队列 Q 的初始状态均为空,元素a, b, c, d, e, f, g依次进入栈 S 。若每个元素出栈后立即进入队列 Q,且 7 个元素出队的顺序是b, d, c, f, e, a, g,则栈 S 的容量至少是( )。

A. 1

B. 2

C. 3

D. 4

正确答案:C 你的答案: 正确 正确率:93%
点击此处查看本题答案

第3题 数据结构 单选题 题目链接

给定二叉树如右图所示。设 N 代表二叉树的根,L 代表根结点的左子树,R 代表根结点的右子树。若遍历后的结点序列是 3,1,7,5,6,2,4,则其遍历方式是()。

A.LRN     B.NRL     C.RLN     D.RNL

正确答案:D 你的答案: 正确 正确率:95%
点击此处查看本题答案

第4题 数据结构 单选题 题目链接

下列二叉排序树中,满足平衡二叉树定义的是( )。

正确答案:B 你的答案: 正确 正确率:97%
点击此处查看本题答案

第5题 数据结构 单选题 题目链接

已知一棵完全二叉树的第 6 层(设根为第 1 层)有 8 个叶结点,则该完全二叉树的结点个数最多是()。

A.39       B.52      C.111     D.119

正确答案:C 你的答案: A 正确率:68%
点击此处查看本题答案

第6题 数据结构 单选题 题目链接

将森林转换为对应的二叉树,若在二叉树中,结点 u 是结点 v 的父结点的父结点,则在原来的森林中, u 和 v 可能具有的关系是( )。

I. 父子关系

II. 兄弟关系

III. u 的父结点与 v 的父结点是兄弟关系

A. 只有II      B. I和II      C. I和III      D. I、II和III

正确答案:B 你的答案: 正确 正确率:63%
点击此处查看本题答案

第7题 数据结构 单选题 题目链接

下列关于无向连通图特性的叙述中,正确的是

Ⅰ.所有顶点的度之和为偶数
Ⅱ.边数大于顶点个数
Ⅲ.至少有一个顶点的度为1

A. 只有Ⅰ

B. 只有Ⅱ

C. Ⅰ和Ⅱ

D. Ⅰ和Ⅲ

正确答案:A 你的答案: 正确 正确率:79%
点击此处查看本题答案

第8题 数据结构 单选题 题目链接

下列叙述中,不符合 m 阶 B 树定义要求的是()。

A.根节点最多有 m 棵子树

B.所有叶结点都在同一层上

C.各结点内关键字均升序或降序排列

D.叶结点之间通过指针链接

正确答案:D 你的答案: 正确 正确率:77%
点击此处查看本题答案

第9题 数据结构 单选题 题目链接

已知关键字序列 5,8,12,19,28,20,15,22 是小根堆(最小堆),插入关键字 3,调整后得到的小根堆是()。

A.3,5,12,8,28,20,15,22,19

B.3,5,12,19,20,15,22,8,28

C.3,8,12,5,20,15,22,28,19

D.3,12,5,8,28,20,15,22,19

正确答案:A 你的答案: 正确 正确率:92%
点击此处查看本题答案

第10题 数据结构 单选题 题目链接

若数据元素序列 11,12,13,7,8,9,23,4,5 是采用下列排序方法之一得到的第二趟排序后的结果,则该排序算法只能是()。

A.起泡排序 

B.插入排序 

C.选择排序 

D.二路归并排序

正确答案:B 你的答案: 正确 正确率:74%
点击此处查看本题答案

第11题 计算机组成原理 单选题 题目链接

冯•诺依曼计算机中指令和数据均以二进制形式存放在存储器中,CPU 区分它们的依据是(  )

A.指令操作码的译码结果     B.指令和数据的寻址方式

C.指令周期的不同阶段        D.指令和数据所在的存储单元

正确答案:C 你的答案: D 正确率:67%
点击此处查看本题答案

第12题 计算机组成原理 单选题 题目链接

一个C语言程序在一台32位机器上运行。程序中定义了三个变量x,y和z,其中x和z是int型,y为short型。当x=127,y=-9时,执行赋值语句z=x+y后,x、y和z的值分别是:

A. x=0000007FH , y=FFF9H , z=00000076H

B. x=0000007FH , y=FFF9H , z=FFFF0076H

C. x=0000007FH , y=FFF7H , z=FFFF0076H

D. x=0000007FH , y=FFF7H , z=00000076H

正确答案:D 你的答案: 正确 正确率:78%
点击此处查看本题答案

第13题 计算机组成原理 单选题 题目链接

浮点数加、减运算过程一般包括对阶、尾数运算、规格化、舍入和判溢出等步骤。设浮点数的阶码和尾数均采用补码表示,且位数分别为5位和7位(均含2位符号位)。若有两个数X=2^7×29/32,Y=2^5×5/8,则用浮点加法计算X+Y的最终结果是。

A.00111 1100010

B.00111 0100010

C.01000 0010001

D.发生溢出

正确答案:D 你的答案: 正确 正确率:61%
点击此处查看本题答案

第14题 计算机组成原理 单选题 题目链接

某计算机的Cache共有16块,采用2路组相联映射方式(即每组2块)。每个主存块大小为32字节,按字节编址。主存129号单元所在主存块应装入到的Cache组号是。

A.0     B.1      C.4      D.6

正确答案:C 你的答案: B 正确率:64%
点击此处查看本题答案

第15题 计算机组成原理 单选题 题目链接

某计算机主存容量为64KB,其中ROM区为4KB,其余为RAM区,按字节编址。现要用2K×8位的ROM芯片和4K×4位的RAM芯片来设计该存储器,则需要上述规格的ROM芯片数和RAM芯片数分别是(  )。

A.1、15                 B.2、15

C.1、30                 D.2、30

正确答案:D 你的答案: 正确 正确率:91%
点击此处查看本题答案

第16题 计算机组成原理 单选题 题目链接

某机器字长16位,主存按字节编址,转移指令采用相对寻址,由两个字节组成,第一字节为操作码字段,第二字节为相对位移量字段。假定取指令时,每取一个字节PC自动加1。若某转移指令所在主存地址为2000H,相对位移量字段的内容为06H,则该转移指令成功转移后的目标地址是

A.2006H      B.2007H                        

C.2008H      D.2009H

正确答案:C 你的答案: A 正确率:76%
点击此处查看本题答案

第17题 计算机组成原理 单选题 题目链接

下列关于RISC的叙述中,错误的是(  )。

A.RISC普遍采用微程序控制器

B.RISC大多数指令在一个时钟周期内完成

C.RISC的内部通用寄存器数量相对CISC多

D.RISC的指令数、寻址方式和指令格式种类相对CISC少

正确答案:A 你的答案: 正确 正确率:62%
点击此处查看本题答案

第18题 计算机组成原理 单选题 题目链接

某计算机的指令流水线由四个功能段组成,指令流经各功能段的时间(忽略各功能段之间的缓存时间)分别为90 ns、80 ns、70 ns、和60 ns,则该计算机的CPU时钟周期至少是(  )。

A.90 ns             B.80 ns             

C.70 ns             D.60 ns

正确答案:A 你的答案: 正确 正确率:98%
点击此处查看本题答案

第19题 计算机组成原理 单选题 题目链接

相对于微程序控制器,硬布线控制器的特点是(  )。

A.指令执行速度慢,指令功能的修改和扩展容易

B.指令执行速度慢,指令功能的修改和扩展难

C.指令执行速度快,指令功能的修改和扩展容易

D.指令执行速度快,指令功能的修改和扩展难

正确答案:D 你的答案: 正确 正确率:93%
点击此处查看本题答案

第20题 计算机组成原理 单选题 题目链接

假设某系统总线在一个总线周期中并行传输4字节信息,一个总线周期占用2个时钟周期,总线时钟频率为10M Hz,则总线带宽是______。

A.10M B/S                  B.20M B/S                 

C.40MB/ S                  D.80M B/S

正确答案:B 你的答案: 正确 正确率:79%
点击此处查看本题答案

第21题 计算机组成原理 单选题 题目链接

假设某计算机的存储系统由Cache和主存组成,某程序执行过程中访存1000次,其中访问Cache缺失(未命中)50次,则Cache的命中率是(  )。

A.5%     B.9.5%     C.50%     D.95%

正确答案:D 你的答案: 正确 正确率:97%
点击此处查看本题答案

第22题 计算机组成原理 单选题 题目链接
下列选项中,能引起外部中断的事件是(  )。 
A.键盘输入
B.除数为 0
C.浮点运算下溢
D.访存缺页
正确答案:A 你的答案: 正确 正确率:91%
点击此处查看本题答案

第23题 操作系统 单选题 题目链接

单处理机系统中,可并行的是(  )。

Ⅰ.进程与进程  Ⅱ.处理机与设备  Ⅲ.处理机与通道  Ⅳ.设备与设备

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

正确答案:D 你的答案: 正确 正确率:84%
点击此处查看本题答案

第24题 操作系统 单选题 题目链接
下列进程调度算法中,综合考虑进程等待时间和执行时间的是______。 
A.时间片轮转调度算法
B.短进程优先调度算法
C.先来先服务调度算法
D.高响应比优先调度算法
正确答案:D 你的答案: 正确 正确率:91%
点击此处查看本题答案

第25题 操作系统 单选题 题目链接

某计算机系统中有8台打印机,由K个进程竞争使用,每个进程最多需要3台打印机。该系统可能会发生死锁的K的最小值是()。

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

正确答案:C 你的答案: 正确 正确率:85%
点击此处查看本题答案

第26题 操作系统 单选题 题目链接
分区分配内存管理方式的主要保护措施是______。
A.界地址保护
B.程序代码保护
C.数据保护
D.栈保护
正确答案:A 你的答案: 正确 正确率:94%
点击此处查看本题答案

第27题 操作系统 单选题 题目链接
一个分段存储管理系统中,地址长度为 32 位,其中段号占 8 位,则最大段长是______。
A.2^8 字节     B.2^16 字节     C.2^24 字节     D.2^32 字节
正确答案:C 你的答案: D 正确率:88%
点击此处查看本题答案

第28题 操作系统 单选题 题目链接

下列文件物理结构中,适合随机访问且易于文件扩展的是()。

A、连续结构
B、索引结构
C、链式结构且磁盘块定长
D、链式结构且磁盘块变长

正确答案:B 你的答案: 正确 正确率:75%
点击此处查看本题答案

第29题 操作系统 单选题 题目链接
假设磁头当前位于第 105 道,正在向磁道序号增加的方向移动。现有一个磁道访问请求序列为 35,45,12,68,110,180,170,195,采用 SCAN 调度(电梯调度)算法得到的磁道访问序列是 ______。
A.110,170,180,195,68,45,35,12
B.110,68,45,35,12,170,180,195
C.110,170,180,195,12,35,45,68
D.12,35,45,68,110,170,180,195
正确答案:A 你的答案: 正确 正确率:87%
点击此处查看本题答案

第30题 操作系统 单选题 题目链接
文件系统中,文件访问控制信息存储的合理位置是______。
A.文件控制块
B.文件分配表
C.用户口令表
D.系统注册表
正确答案:A 你的答案: 正确 正确率:91%
点击此处查看本题答案

第31题 操作系统 单选题 题目链接
设文件 F1 的当前引用计数值为 1,先建立 F1 的符号链接(软链接)文件 F2,再建立 F1 的硬链接文件 F3,然后删除 F1。此时,F2 和 F3 的引用计数值分别是______。
A. 0、1
B.1、1
C.1、2
D.2、1
正确答案:B 你的答案: 正确 正确率:61%
点击此处查看本题答案

第32题 操作系统 单选题 题目链接

程序员利用系统调用打开I/O设备时,通常使用的设备标识是( )

A、逻辑设备名 B、物理设备名 C、主设备号 D、从设备号

正确答案:A 你的答案: 正确 正确率:87%
点击此处查看本题答案

第33题 计算机网络 单选题 题目链接

在OSI参考模型中,自下而上第一个提供端到端服务的层次是()

A.数据链路层
B.传输层
C.会话层
D.应用层
正确答案:B 你的答案: 正确 正确率:84%
点击此处查看本题答案

第34题 计算机网络 单选题 题目链接

在无噪声情况下,若某低通通信链路的带宽为3kHz,采用4个相位,每个相位具有4种振幅的QAM调制技术,则该通信链路的最大数据传输速率是( )。

A. 12kbps
B. 24kbps
C. 48kbps
D. 96kbps

正确答案:B 你的答案: 正确 正确率:71%
点击此处查看本题答案

第35题 计算机网络 单选题 题目链接

数据链路层采用后退N 帧(GBN)协议,发送方已经发送了编号为0~7的帧。当计时器超时时,若发送方只收到0、2、3号帧的确认,则发送方需要重发的帧数是(  )

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

正确答案:C 你的答案: 正确 正确率:85%
点击此处查看本题答案

第36题 计算机网络 单选题 题目链接
以太网交换机进行转发决策时使用的 PDU 地址是______。
A.目的物理地址
B.目的 IP 地址
C.源物理地址
D.源 IP 地址
正确答案:A 你的答案: 正确 正确率:72%
点击此处查看本题答案

第37题 计算机网络 单选题 题目链接
在一个采用 CSMA/CD 协议的网络中,传输介质是一根完整的电缆,传输速率为 1Gbps,电缆中的信号传播速度是 200 000km/s 。若最小数据帧长度减少 800 比特,则最远的两个站点之间的距离至少需要______。
A.增加 160m
B.增加 80m
C.减少 160m
D.减少 80m
正确答案:D 你的答案: 正确 正确率:57%
点击此处查看本题答案

第38题 计算机网络 单选题 题目链接
主机甲与主机乙之间已建立一个 TCP 连接,主机甲向主机乙发送了两个连续的 TCP 段,分别包含 300 字节和 500 字节的有效载荷,第一个段的序列号为 200,主机乙正确接收到两个段后,发送给主机甲的确认序列号是______。
A.500
B.700
C.800
D.1000
正确答案:D 你的答案: 正确 正确率:90%
点击此处查看本题答案

第39题 计算机网络 单选题 题目链接
一个 TCP 连接总是以 1KB 的最大段长发送 TCP 段,发送方有足够多的数据要发送。当拥塞窗口为 16KB 时发生了超时,如果接下来的 4 个 RTT(往返时间)时间内的 TCP 段的传输都是成功的,那么当第 4 个 RTT 时间内发送的所有 TCP 段都得到肯定应答时,拥塞窗口大小是______。
A.7 KB
B.8 KB
C.9 KB
D.16 KB
正确答案:C 你的答案: 正确 正确率:73%
点击此处查看本题答案

第40题 计算机网络 单选题 题目链接
FTP 客户和服务器间传递 FTP 命令时,使用的连接是______。
A.建立在 TCP 之上的控制连接
B.建立在 TCP 之上的数据连接
C.建立在 UDP 之上的控制连接
D.建立在 UDP 之上的数据连接
正确答案:A 你的答案: 正确 正确率:80%
点击此处查看本题答案

第41题 数据结构 综合题 题目链接
(10分)带权图(权值非负,表示边连接的两顶点间的距离)的最短路径问题是找出从初始顶点到目标顶点之间的一条最短路径。假设从初始顶点到目标顶点之间存在路径,现有一种解决该问题的方法:
① 设最短路径初始时仅包含初始顶点,令当前顶点u为初始顶点;
② 选择离u最近且尚未在最短路径中的一个顶点v,加入到最短路径中,修改当前顶点u=v;
③ 重复步骤②,直到u是目标顶点时为止。
请问上述方法能否求得最短路径?若该方法可行,请证明之;否则,请举例说明。
你的答案:

不可以,设有三个节点A,B,C,AB之间举例为1,BC之间距离为2,AC之间距离为2,初始节点A,目标节点C,从A出发,选B,当前节点为B,根据算法会选择节点C,得出结论AC之间最短路径为ABC,长度为3,但实际是AB,长度为2


评分及理由

(1)得分及理由(满分10分)

学生回答“不可以”,判断正确,得2分。学生尝试举例说明,但所举例子存在逻辑错误:学生描述“AC之间距离为2”,这意味着存在一条从A直接到C的边,权值为2。按照题目描述的算法,从初始顶点A开始,选择“离u最近且尚未在最短路径中的一个顶点v”。此时,离A最近的顶点是B(距离1)和C(距离2)。算法会选择B(因为最近),然后将当前顶点u更新为B。接下来,从B出发,选择离B最近且未在路径中的顶点。由于C距离B为2,且A已在路径中,所以会选择C。最终路径为A->B->C,总长度为3。学生声称“实际是AB,长度为2”,这里“AB”应为“AC”的笔误。但即使修正为AC,实际最短路径长度是2(A->C),而算法得到长度为3,确实说明了算法失败。然而,学生例子中的图(A-B:1, B-C:2, A-C:2)与标准答案例子不同,但同样能证明算法缺陷(贪心局部最优可能导致全局非最优)。学生例子本身是有效的反例,因此举例部分应得分。但学生表述存在明显笔误(“实际是AB”),可能造成理解歧义,扣1分。此外,学生未像标准答案那样明确指出“不一定能”或“不能”,但结论正确。综合考量,本小题得分为7分(满分10分)。扣分点:表述存在笔误/不严谨,扣1分;论证完整性和清晰度略逊于标准答案,扣2分。

题目总分:7分

点击此处查看本题答案

第42题 数据结构 综合题 题目链接
(15分)已知一个带有表头结点的单链表,结点结构为:
\[
  \begin{array}{|c|c|}
    \hline
    \texttt{data} & \texttt{link} \\
    \hline
  \end{array}
\]
假设该链表只给出了头指针 list。在不改变链表的前提下,请设计一个尽可能高效的算法,查找链表中倒数第 k 个位置上的结点( k 为正整数)。若查找成功,算法输出该结点的 data 域的值,并返回 1;否则,只返回 0。要求:
⑴ 描述算法的基本设计思想;(5分)
⑵ 描述算法的详细实现步骤;(5分)
⑶ 根据设计思想和实现步骤,采用程序设计语言描述算法(使用 C、C++或 Java 语言实现),关键之处请给出简要注释。(5分)
你的答案:

1.用两个指针,A指针在前,B指针与A指针间隔为5,A指向最后一个节点时,B指向所需元素

2.(1) A指针出发,向前移动k步

   (2) A向前一步,B向前一步

   (3) 重复(2),直到A->next == null

3.

find(node* head){

 int cnt = k; //计数器
 node* p = head; // p指针
 node* q = head; // q指针

 // p先出发
 while (k--) {
  p = p->next;
 }

 while( p-> next != null ) {

  p = p->next; // 同时向后
  q = q->next;

 }
 return q;
}

 


评分及理由

(1)得分及理由(满分5分)

得分:3分

理由:学生的基本设计思想描述基本正确,提到了使用两个指针并保持间隔k,当A指针到达末尾时,B指针即为所求。这与标准答案的核心思想一致。但是,学生的描述存在不严谨之处:第一句“间隔为5”中的“5”应为“k”,这是一个明显的笔误或概念混淆。此外,描述过于简略,没有明确指出初始时两个指针的位置关系以及移动的触发条件。因此扣2分。

(2)得分及理由(满分5分)

得分:3分

理由:学生的实现步骤基本遵循了双指针法的逻辑,分为“A先移动k步”和“AB同步移动直到A到末尾”两个阶段。步骤框架正确。但是,步骤描述存在严重缺陷:第一步“A指针出发,向前移动k步”没有考虑链表长度可能小于k的情况,如果链表长度小于k,此步骤中p指针会变成空指针(NULL),后续对p->next的访问将导致错误。步骤描述中缺少对边界条件的判断和处理。因此扣2分。

(3)得分及理由(满分5分)

得分:1分

理由:学生的代码实现存在多处逻辑错误和语法问题:

  1. 函数签名不完整,未定义参数类型和返回值类型。
  2. 变量`k`未定义,直接使用。
  3. 第一个`while (k--)`循环在移动指针`p`时,未检查`p`是否已为`NULL`。若链表长度小于k,此循环将导致访问空指针的`next`域,程序崩溃。
  4. 第二个循环条件`while( p-> next != null )`有误。当`p`移动k步后,应判断`p`本身是否为`NULL`(以确定链表长度是否足够)。此外,循环条件应为`p != NULL`(标准答案)或`p->next != NULL`(会导致q停在倒数第k+1个结点)。此处条件使用`p->next`会导致最终`q`指向倒数第k+1个结点,结果错误。
  5. 返回值是结点指针`q`,而题目要求成功时返回1并输出data值,失败时返回0。代码完全没有实现题目要求的输出和返回逻辑。
  6. 代码中使用了未定义的`node`类型,应为题目中定义的`LNode`或`LinkList`。
代码仅体现了双指针的大致框架,但关键逻辑全部错误,且未满足题目功能要求。因此仅给予1分,以肯定其尝试使用双指针的思路。

题目总分:3+3+1=7分

点击此处查看本题答案

第43题 计算机组成原理 综合题 题目链接

(8分)某计算机的CPU主频为500MHz,CPI为5(即执行每条指令平均需5个时钟周期)。假定某外设的数据传输率为0.5M B/s,采用中断方式与主机进行数据传送,以32位为传输单位,对应的中断服务程序包含18条指令,中断服务的其他开销相当于2条指令的执行时间。请回答下列问题,要求给出计算过程。

1)在中断方式下,CPU用于该外设I/ O的时间占整个CPU时间的百分比是多少?(4分)

2)当该外设的数据传输率达到5M B/s时,改用DMA方式传送数据。假定每次DMA传送块大小为5000B,且DMA预处理和后处理的总开销为500个时钟周期,则CPU用于该外设I/ O的时间占整个CPU时间的百分比是多少?(假设DMA与CPU之间没有访存冲突)(4分)

你的答案:

1.中断响应时间:(18+2)*5*/500=0.2us, 每隔4B/0.5M B/s =8us, 占比:0.2/8  =  2.5%

2.间隔时间:5000B/5M B/s = 1ms,DMA:1000*5/500MHZ = 0.01ms,占比:0.01 = 1%


评分及理由

(1)得分及理由(满分4分)

得分:4分

理由:学生作答的思路与标准答案不同,但逻辑正确,计算结果准确。学生通过计算每次中断服务所需时间(0.2us)和中断请求间隔时间(8us),进而计算出时间占比为2.5%,与标准答案一致。思路清晰,计算无误,因此给满分。

(2)得分及理由(满分4分)

得分:2分

理由:学生作答存在逻辑错误和计算错误。
1. 逻辑错误:学生计算“DMA:1000*5/500MHZ = 0.01ms”这一步,其分子“1000*5”的含义不明确,似乎试图用DMA次数乘以某个CPI?这与题目中给出的“DMA预处理和后处理的总开销为500个时钟周期”条件不符。正确的计算应为:总时钟周期数 = DMA次数 * 每次DMA开销 = 1000 * 500 = 500,000个周期。然后除以CPU主频(500MHz,即5e8周期/秒)得到总时间。
2. 计算错误:基于上述错误逻辑,学生得出的DMA处理总时间0.01ms(即1e-5秒)是错误的。正确的总时间应为 500,000 / (500 * 10^6) = 0.001秒 = 1ms。最终CPU时间占比应为 (0.001秒) / (1秒) = 0.1%,但学生得出的占比是1%,计算错误。
3. 部分正确:学生正确计算了DMA传送间隔时间(1ms)和1秒内的DMA次数(1000次),这部分思路正确。但由于核心的计算过程存在上述逻辑与计算错误,导致最终答案错误,因此扣除2分。

题目总分:4+2=6分

点击此处查看本题答案

第44题 计算机组成原理 综合题 题目链接
(13分)某计算机字长 16 位,采用 16 位定长指令字结构,部分数据通路结构如下图所示,图中所有控制信号为 1 时表示有效、为 0 时表示无效。例如控制信号 MDRinE 为 1 表示允许数据从 DB 打入 MDR,MDRin 为 1 表示允许数据从内总线打入 MDR。假设 MAR 的输出一直处于使能状态。加法指令“ADD (R1),R0”的功能为(R0)+((R1))  (R1),即将 R0 中的数据与 R1 的内容所指主存单元的数据相加,并将结果送入 R1 的内容所指主存单元中保存。
下表给出了上述指令取指和译码阶段每个节拍(时钟周期)的功能和有效控制信号,请按表中描述方式用表格列出指令执行阶段每个节拍的功能和有效控制信号。
你的答案:


评分及理由

(1)得分及理由(满分13分)

学生答案给出了执行阶段 C5 到 C8 四个节拍的功能和控制信号。分析如下:

  • C5:功能“MAR←(R1)”和控制信号“R1out, MARin”正确。这步将R1的内容(即内存地址)送入MAR。
  • C6:功能“MDR←M(MAR)”和控制信号“MemR, MDRinE”正确。这步根据MAR的地址从内存读取数据到MDR。
  • C7:功能“A←(R0)”和控制信号“R0out, Ain”正确。这步将R0中的数据暂存到寄存器A中。
  • C8:功能“AC←A + MDR”和控制信号“ADD, ACin”存在逻辑错误。指令要求将R0的数据与从内存读出的数据(现在在MDR中)相加。在C7,R0的数据已存入A;在C6,内存数据已存入MDR。因此,C8的正确操作应该是将A和MDR的内容通过ALU相加,结果存入AC。学生的功能描述“AC←A + MDR”在逻辑上是正确的,但其给出的控制信号“ADD, ACin”不完整,缺少将MDR的内容送上内总线的控制信号“MDRout”。没有这个信号,ALU无法获取MDR中的数据。这是一个关键的控制信号遗漏,属于逻辑错误。
  • 缺失步骤:学生的答案缺少将运算结果(在AC中)写回内存的步骤。根据指令功能“结果送入R1的内容所指主存单元中保存”,至少还需要两个节拍:将AC的内容送入MDR,然后将MDR的内容写入内存。学生答案在C8后结束,导致功能未完成。

综合来看,学生答案完成了取操作数和部分运算,但关键的加法操作控制信号不完整,且完全缺失了结果写回的步骤。因此,不能给满分。

参考标准答案,完整的执行阶段需要5或6个节拍。学生答案只提供了4个,且第4个节拍有控制信号遗漏。考虑到其正确完成了前三个节拍,并在C8表达了正确的运算意图(尽管控制信号不全),可以给予部分分数。

扣分点:C8控制信号缺失“MDRout”,扣2分;缺失结果写回内存的完整步骤(通常需2个节拍),扣4分。

得分:13 - 2 - 4 = 7分。

题目总分:7分

点击此处查看本题答案

第45题 操作系统 综合题 题目链接
(7分)三个进程 P1、P2、P3 互斥使用一个包含 N(N>0)个单元的缓冲区。P1 每次用 produce()生成一个正整数并用 put()送入缓冲区某一空单元中;P2 每次用 getodd()从该缓冲区中取出一个奇数并用 countodd()统计奇数个数;P3 每次用 geteven()从该缓冲区中取出一个偶数并用 counteven()统计偶数个数。请用信号量机制实现这三个进程的同步与互斥活动,并说明所定义信号量的含义。要求用伪代码描述。
你的答案:
Semophore mutex = 1; // 互斥锁

Semophore empty = N; // 空位置

Semophore odd = 0; // 记录奇数个数

Semophore even = 0; // 记录偶数个数


P1{

   while(1){
       int num = pruduce(); // 生成数据
       p(empty); // 检测缓冲区是否有空位置
       p(mutex); // 互斥访问
       put(num); 
       v(mutex); // 退出临界区
       if(num&1==0) v(even); // 放一个偶数
       else v(odd); // 放一个奇数
   }
}

P2 {

   while(1){
   
      p(odd);// 看是否有奇数
      p(mutex); //进入临界区
      getodd();
      counterodd();
      v(mutex); // 推出临界区
      v(empty); // 释放一个空间
   }

}

P3 {

   while(1){
   
      p(even); // 看是否有偶数
      p(mutex); // 进入临界区
      geteven();
      countereven();
      v(mutex); // 退出临界区
      v(empty); // 释放一个空间
   }

}

 


评分及理由

(1)得分及理由(满分7分)

得分:5分

理由:

  • 优点:学生答案的整体框架正确。定义了四个必要的信号量(mutex, empty, odd, even),含义与标准答案一致。P1、P2、P3三个进程的同步与互斥逻辑基本正确:P1先检查空位(empty),再互斥访问缓冲区(mutex),放入数据后根据奇偶性通知对应消费者(V(odd)或V(even))。P2和P3先等待对应奇偶信号(P(odd)/P(even)),再互斥访问缓冲区,取出数据并统计,最后释放空位(V(empty))。使用了while(1)循环,符合生产者-消费者模型的持续运行特点。
  • 扣分点
    • 逻辑错误(-1分):在P2和P3进程中,将统计操作(counterodd()/countereven())放在了互斥区(mutex保护)内。根据题目描述,countodd()和counteven()是统计操作,通常不涉及对共享缓冲区的访问,因此没有必要放在互斥区内。将它们放在互斥区内虽然不会导致错误,但会不必要地延长临界区长度,降低并发效率,属于设计上的瑕疵。标准答案中,统计操作是在释放互斥锁之后进行的。
    • 逻辑错误(-1分):学生代码中判断奇偶的语句为 if(num&1==0)。在C/C++运算符优先级中,== 的优先级高于 &。因此,该表达式实际等价于 if(num & (1==0)),即 if(num & 0),结果永远为假。这将导致P1永远只执行 V(odd),而不会执行 V(even),使得P3进程永远无法被唤醒。这是一个严重的逻辑错误。正确的写法应为 if((num & 1) == 0) 或直接使用 if(num % 2 == 0)
  • 其他:信号量拼写有误(Semophore应为Semaphore),变量名有拼写错误(pruduce应为produce),但不影响核心逻辑理解,不扣分。学生答案与标准答案在代码结构上略有不同(如循环位置、统计函数调用位置),但只要逻辑正确,不扣分。

题目总分:5分

点击此处查看本题答案

第46题 操作系统 综合题 题目链接
(8分)请求分页管理系统中,假设某进程的页表内容如下表所示:
\[
  \begin{array}{|c|c|c|}
    \hline
    \texttt{页号} & \texttt{页框(Page Frame)号} & \texttt{有效位(存在位)}  \\
    \hline
    \texttt{0} & \texttt{101H} & \texttt{1}  \\
    \hline
    \texttt{1} & \texttt{—} & \texttt{0}  \\
    \hline
    \texttt{2} & \texttt{254H} & \texttt{1}  \\
    \hline
  \end{array}
\]
页面大小为 4KB,一次内存的访问时间是 100ns,一次快表(TLB)的访问时间是 10ns,处理一次缺页的平均时间 10^8 ns(已含更新 TLB 和页表的时间),进程的驻留集大小固定为 2,采用最近最少使用置换算法(LRU)和局部淘汰策略。假设①TLB 初始为空;②地址转换时先访问 TLB,若 TLB 未命中,再访问页表(忽略访问页表之后的 TLB 更新时间);③有效位为 0 表示页面不在内存,产生缺页中断,缺页中断处理后,返回到产生缺页中断的指令处重新执行。设有虚地址访问序列 2362H、1565H、25A5H,请问:
(1) 依次访问上述三个虚地址,各需多少时间?给出计算过程。(6分)
(2) 基于上述访问序列,虚地址 1565H 的物理地址是多少?请说明理由。(2分)
你的答案:

1.访问2362H,页面大小4KB,2362/0xFFF=2,则访问2号页面,有效位为1,访问254362H,其中TLB未命中,需要两次内存访问,一次TLB访问,共210ns,并记入TLB

访问1565H,页面大小4KB,15655/0xFFF=1,缺页,共需两次TLB访问,一次缺页中断处理,一次内存访问,共100000210ns

访问25A5H,页面大小4KB,25A5/0xFFF=2,TLB命中,只需一次内存访问,一次TLB访问,共110ns

2.101565H,程序只有两个页框,根据LRU算法,2号页面刚被访问过,所以替换0号页面,1565H/0xFFF=1,故为1号页面,实地址等于页框号+页内偏移,即101565H


评分及理由

(1)得分及理由(满分6分)

学生答案对三个虚地址的访问时间计算基本正确,思路与标准答案一致。

  • 对于2362H:学生正确得出页号为2,有效位为1,并计算了访问时间210ns(10ns TLB + 100ns 页表 + 100ns 内存)。虽然表述中“访问254362H”和“需要两次内存访问”的措辞不够严谨(访问页表是一次内存访问,访问数据是另一次内存访问,共两次),但核心计算过程和结果正确。得2分。
  • 对于1565H:学生正确得出页号为1,发生缺页,并计算了访问时间100000210ns。其计算过程(两次TLB访问、一次缺页处理、一次内存访问)与标准答案(10+100+10^8+10+100)的逻辑一致,结果正确。得2分。
  • 对于25A5H:学生正确得出页号为2,TLB命中,并计算了访问时间110ns(10ns TLB + 100ns 内存)。得2分。

本小题共得6分。

(2)得分及理由(满分2分)

学生正确给出了虚地址1565H的物理地址为101565H,并说明了理由:驻留集大小为2,根据LRU算法,淘汰0号页面,将1号页面装入原0号页的页框(101H),从而合成物理地址。理由充分,结论正确。

本小题得2分。

题目总分:6+2=8分

点击此处查看本题答案

第47题 计算机网络 综合题 题目链接
(9分)某网络拓扑如下图所示,路由器 R1 通过接口 E1、E2 分别连接局域网 1、局域网 2,通过接口 L0 连接路由器 R2,并通过路由器 R2 连接域名服务器与互联网。R1 的 L0 接口的 IP 地址是 202.118.2.1;R2 的 L0 接口的 IP 地址是 202.118.2.2,L1 接口的 IP 地址是 130.11.120.1,E0 接口的 IP 地址是 202.118.3.1; 域名服务器的 IP 地址是 202.118.3.2。
R1 和 R2 的路由表结构为:
\[
  \begin{array}{|c|c|c|c|}
    \hline
    \texttt{目的网络IP地址} & \texttt{子网掩码} & \texttt{下一跳IP地址} & \texttt{接口} \\
    \hline
  \end{array}
\]
⑴ 将 IP 地址空间 202.118.1.0/24 划分为 2 个子网,分别分配给局域网 1、局域网 2,每个局域网需分配的 IP 地址数不少于 120 个。请给出子网划分结果,说明理由或给出必要的计算过程。(3分)
⑵ 请给出 R1 的路由表,使其明确包括到局域网 1 的路由、局域网 2 的路由、域名服务器的主机路由和互联网的路由。(4分)
⑶ 请采用路由聚合技术,给出 R2 到局域网 1 和局域网 2 的路由。(2分)
你的答案:

1.不少于120个,故至少需要7位主机号,原子网号为24位,故只能有最高位1位网络号,即A:202.118.1.128/25,B:202.118.1.0/25

2.      目的网络IP地址 子网掩码 下一跳IP地址 接口

          202.118.1.128         /25          直接交付       E1

          202.118.1.0             /25           直接交付       E2

          202.118.2.1            /32          202.118.2.2    L0

          130.118.2.2            /32          202.118.2.2    L0

3.     目的网络IP地址 子网掩码 下一跳IP地址  接口

          202.118.1.0           /24          202.118.2.1     L0


评分及理由

(1)得分及理由(满分3分)

学生答案正确地将202.118.1.0/24划分为两个/25子网,并说明了需要7位主机号(2^7-2=126≥120),划分结果正确(202.118.1.0/25和202.118.1.128/25)。虽然子网分配顺序与标准答案可能不同,但题目允许两种分配方案,且学生明确写出了A和B,思路和结果均正确。因此得3分。

(2)得分及理由(满分4分)

学生答案存在多处错误:
1. 路由表格式中“下一跳IP地址”一栏,对于直连网络应留空或写“—”,学生写“直接交付”虽可理解但不够规范,此处不扣分。
2. 到域名服务器的主机路由错误:目的网络IP地址应为域名服务器的地址202.118.3.2,学生写成了202.118.2.1(这是R1自己的L0接口地址)和130.118.2.2(此地址在题目中未出现,疑似笔误)。这是一个严重的逻辑错误,导致该路由项无效。
3. 到互联网的默认路由缺失。学生没有给出目的网络为0.0.0.0、子网掩码为0.0.0.0的默认路由。
由于第2、3点错误,该部分答案只能得到部分分数。考虑到学生正确给出了两个局域网的路由(2分),但域名服务器路由完全错误且缺少默认路由,扣2分。因此得2分。

(3)得分及理由(满分2分)

学生正确使用了路由聚合技术,将202.118.1.0/25和202.118.1.128/25聚合为202.118.1.0/24,并正确指定下一跳为202.118.2.1,接口为L0。答案与标准答案一致。因此得2分。

题目总分:3+2+2=7分

点击此处查看本题答案

继续练习 练习历史