2025 年 7 月第 1 次 408 月考试卷

科目组合

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

02: 59: 34
答题卡
得分 85/150
答对题目数 28/47
评价

答题情况分析报告

正确: 28
错误: 19
未答: 0
总分: 85/150
正确率 59.6%
第1题 数据结构 单选题 题目链接

下列关于线性表插入操作的时间复杂度分析,正确的是()

A. 顺序表在第 i 个元素前插入,平均时间复杂度为 O (1)

B. 单链表在第 i 个元素前插入,若已知头指针,时间复杂度为 O (1)

C. 顺序表在第 i 个元素前插入,最坏时间复杂度为 O (n)

D. 单链表在第 i 个元素前插入,若已知第 i 个元素的指针,时间复杂度为 O (n)

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

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

已知栈的 push 序列为 1,2,3,4,且每个元素 push 后均可 pop,则下列不可能的 pop 序列是()

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

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

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

若循环队列采用顺序存储结构,容量为 M(下标 0~M-1),front 指向队头元素,rear 指向队尾元素的下一个位置,且队列非空时 front≠rear,则该循环队列的判满条件是()

A.rear == front     B.(rear + 1) % M == front

C.rear == M-1     D.(rear - 1) % M == front

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

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

已知某二叉树的中序遍历序列为 DBEAFC,后序遍历序列为 DEBFCA,则其前序遍历序列为()

A.ABDECF     B.ABDCEF     C.AEDBCF     D.AEDCBF

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

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

初始平衡二叉树(AVL 树)的结构为:根节点 30,左孩子 20,右孩子 40,40 的右孩子 50。现将关键字 60 插入该 AVL 树后,为使树重新平衡,需进行的旋转类型是()

A.LL 旋转     B.RR 旋转     C.LR 旋转     D.RL 旋转

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

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

给定关键字权值集合 {5,6,7,8,9},构造哈夫曼树后,该树的带权路径长度(WPL)为()

A.79     B.81     C.83     D.85

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

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

无向图 G 的顶点集 V={1,2,3,4,5},边集 E={(1,2),(1,3),(2,4),(3,5)},若 G 采用邻接表存储,从顶点 1 开始进行深度优先搜索(DFS),则下列不可能的 DFS 序列是()

A.1→2→4→3→5     B.1→3→5→2→4

C.1→2→3→4→5     D.1→3→2→4→5

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

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

有向图 G 中,源点为 V0,各边及权值为:V0→V1(2),V0→V2(5),V1→V2(1),V1→V3(4),V2→V3(1)。采用迪杰斯特拉算法求 V0 到 V3 的最短路径长度,结果为()

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

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

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

散列表的地址空间为 0~6(哈希函数 H (key)=key%7),采用线性探测法处理冲突。若关键字序列为 {23,14,9,6,30,12,18},则该散列表查找成功的平均查找长度(ASL)为()

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

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

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

下列排序算法中,最坏时间复杂度为 O (n²) 且不稳定的是()

A. 冒泡排序     B. 直接插入排序     C. 快速排序     D. 归并排序

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

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

将关键字序列 {50,30,70,20,40,60,80} 依次插入空的二叉排序树(BST)后,该 BST 查找成功的平均查找长度(ASL)为()

A.15/7     B.17/7     C.19/7     D.21/7

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

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

某计算机采用双符号位补码表示浮点数,格式为 “阶码(4 位,含 2 位符号位)+ 尾数(8 位,含 2 位符号位)”,基数为 2。若两浮点数 X=2^3×0.1101(补码表示为阶码 0011,尾数 00110100)、Y=2^2×(-0.1010)(补码表示为阶码 0010,尾数 11011000),执行 X+Y 后结果的状态是()

A. 规格化、无溢出     B. 规格化、有溢出

C. 非规格化、无溢出     D. 非规格化、有溢出

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

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

某三级存储系统采用 “L1 不命中则访问 L2,L2 不命中则访问主存” 的串行访问方式。已知:L1 Cache 访问时间 1ns,命中率 78%;L2 Cache 访问时间 10ns,命中率 75%;主存访问时间 140ns。该存储系统的平均访问时间为()

A.3.2ns     B.10.9ns     C.19.5ns     D.28.3ns

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

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

某计算机指令系统采用相对寻址方式,指令格式为 “操作码(6 位)+ 位移量(16 位,补码)”,指令字长 24 位(1 字节 = 8 位)。若当前 PC 值为 0x123456(指向当前指令的地址),则执行指令 “JMP disp”(其中 disp=0x0005,补码形式)后,PC 的目标地址为()

A. 0x123456     B. 0x12345C     C. 0x12345E     D. 0x123464

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

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

某 4 段流水线的各段执行时间分别为:段 1(2ns)、段 2(4ns)、段 3(1ns)、段 4(3ns)。已知非流水线执行同样任务时,单任务周期为各段串行总时间(即 10ns)。当连续执行 100 条相同任务时,该流水线的加速比约为()

A.1.67     B.2.5     C.3.33     D.4

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

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

某计算机采用 8421 BCD 码表示十进制数,执行两个 1 位 BCD 码加法 “5+6” 时,若采用 “先相加再校正” 的方式,校正后的结果(BCD 码)及校正逻辑为()

A.0001 0001,无需校正     B.0001 0001,加 6 校正

C.0000 0001,加 6 校正     D.0000 0001,无需校正

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

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

用 4K×8 位的 SRAM 芯片组成 16K×16 位的存储器,需采用的扩展方式及所需芯片数量为()

A. 仅字扩展,4 片     B. 仅位扩展,2 片

C. 字扩展 + 位扩展,8 片    D. 字扩展 + 位扩展,16 片

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

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

下列微操作中,不属于指令取指周期的是()

A.PC → MAR     B.MDR → IR

C.IR(操作数地址字段)→ MAR   D.PC + 1 → PC

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

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

下列关于 I/O 接口独立编址方式的特点描述,正确的是()

A. 需使用访存指令访问 I/O 设备

B.I/O 地址空间与内存地址空间重叠

C. 需设置专用的 I/O 指令

D. 可直接复用内存的地址译码电路

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

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

某浮点数格式中,尾数采用原码表示,基数分别为 2 和 4,尾数位数均为 24 位(含 1 位符号位)。忽略阶码影响,仅从尾数精度角度比较,两者的关系为()

A. 基数 2 的精度高于基数 4

B. 基数 4 的精度高于基数 2

C. 两者精度相同

D. 精度与基数无关,仅与尾数位数有关

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

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

程序状态字(PSW)寄存器用于保存 CPU 运行状态,下列标志位中,不属于 PSW 的是()

A. 进位标志(CF)     B. 零标志(ZF)

C. 中断允许标志(IF)  D. 指令地址标志(IAF)

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

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

某 3 段流水线(取指 IF、译码 ID、执行 EX),执行指令序列: ADD R1, R2, R3 (R1 = R2 + R3,EX 段写 R1) SUB R4, R1, R5 (R4 = R1 - R5,ID 段读 R1) MUL R1, R6, R7 (R1 = R6 × R7,EX 段写 R1) 该指令序列存在的流水线数据冒险类型是()

A. 仅 RAW(写后读)     B. 仅 WAR(读后写)

C.RAW 和 WAW(写后写)  D.WAR 和 WAW

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

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

某系统中有 3 个进程 P1、P2、P3,其到达时间(AT)和运行时间(BT)如下表所示。若采用抢占式调度算法,下列哪种算法的平均周转时间(周转时间 = 完成时间 - 到达时间)最小?

$$
\begin{array}{|c|c|c|}
\hline
\text{进程} & \text{到达时间(AT)} & \text{运行时间(BT)} \\
\hline
\text{P1} & 0 & 4 \\
\hline
\text{P2} & 1 & 1 \\
\hline
\text{P3} & 2 & 1 \\
\hline
\end{array}
$$

A. 先来先服务(FCFS)

B. 非抢占式短作业优先(SJF)

C. 抢占式短作业优先(SJF)

D. 静态优先级(优先级:P1>P2>P3)

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

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

某系统存在一类可重用资源 R,共 8 个。系统中有 3 个进程 P1、P2、P3,每个进程对资源 R 的最大需求分别为 4、5、6。若当前资源分配情况为 P1 已分配 3 个、P2 已分配 2 个、P3 已分配 2 个,此时系统是否存在死锁风险?若存在,其根本原因是?

A. 不存在,因剩余资源可通过合理分配满足所有进程的最终需求(存在安全序列)

B. 存在,因满足死锁 “循环等待” 条件

C. 存在,因满足死锁 “资源不足” 条件(n*(k-1)≥m,n 为进程数,k 为进程最大需求,m 为资源总数)

D. 不存在,因所有进程已获取部分资源

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

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

某分页存储系统中,页面大小为 4KB(2¹²B),逻辑地址采用 32 位表示。若某进程的逻辑地址为 0x123456(十六进制),则该地址对应的页号是?

A. 0x12     B. 0x123     C. 0x1234     D. 0x2345

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

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

某虚拟内存系统采用 标准 Clock(最近未使用,仅使用位)页面置换算法,内存块数为 3。若某进程的页面访问序列为 1、2、3、4、1、2、5、1、2、3、4、5,则该序列的缺页次数是?

A. 6     B. 7     C. 8     D. 9

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

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

在生产者 - 消费者问题中,假设缓冲区大小为 5,用信号量实现同步与互斥。下列关于信号量初值的描述,正确的是?

A. 互斥信号量 mutex 初值为 5,空缓冲区信号量 empty 初值为 1,满缓冲区信号量 full 初值为 0

B. 互斥信号量 mutex 初值为 1,空缓冲区信号量 empty 初值为 5,满缓冲区信号量 full 初值为 0

C. 互斥信号量 mutex 初值为 1,空缓冲区信号量 empty 初值为 0,满缓冲区信号量 full 初值为 5

D. 互斥信号量 mutex 初值为 5,空缓冲区信号量 empty 初值为 0,满缓冲区信号量 full 初值为 1

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

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

某文件系统采用混合索引结构,盘块大小为 1KB(2¹⁰B),索引项大小为 4B。若索引结构包含 10 个直接索引项、1 个一级间接索引项、1 个二级间接索引项,则该文件系统支持的最大文件大小是?

A. (10+256)×1KB     B. (10+256+256²)×1KB

C. (10+512)×1KB     D. (10+512+512²)×1KB

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

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

下列关于 I/O 控制方式的描述,正确的是?

A. 程序查询方式中,CPU 需持续查询 I/O 设备状态,I/O 效率最高

B. 中断驱动方式中,CPU 仅在 I/O 设备完成数据传送后处理中断,可并行执行其他任务

C. DMA 方式中,数据传送需 CPU 逐字节控制,仅减少中断次数

D. 通道方式中,通道完全独立于 CPU,无需 CPU 初始化通道程序

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

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

在进程状态转换中,下列哪种转换是不可能发生的?

A. 运行态→就绪态     B. 运行态→阻塞态

C. 就绪态→阻塞态     D. 阻塞态→就绪态

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

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

某系统存在 2 类资源 R1(3 个)、R2(2 个),2 个进程 P1、P2。当前资源分配情况如下:P1 已分配 R1:1、R2:1,最大需求 R1:2、R2:2;P2 已分配 R1:1、R2:0,最大需求 R1:2、R2:1。此时系统剩余资源为 R1:1、R2:1,若 P1 提出请求 R1:0、R2:1,系统是否应批准该请求?依据是?

A. 应批准,批准后系统无死锁风险

B. 应拒绝,批准后系统存在死锁风险

C. 应批准,P1 的请求未超过最大需求

D. 应拒绝,P2 的剩余需求无法满足

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

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

下列关于页面大小对内存性能影响的描述,正确的是?

A. 页面越大,页内碎片越小,缺页率越低

B. 页面越大,页内碎片越大,缺页率通常越低

C. 页面越小,页内碎片越大,缺页率越高

D. 页面越小,页内碎片越小,缺页率越低

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

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

下列关于 OSI 七层模型与 TCP/IP 四层模型的对应关系及协议归属的描述中,错误的是()

A. OSI 应用层对应 TCP/IP 应用层,FTP 协议属于该层次

B. OSI 传输层对应 TCP/IP 传输层,TCP 协议属于该层次

C. OSI 网络层对应 TCP/IP 网际层,IP 协议属于该层次

D. OSI 数据链路层对应 TCP/IP 网络接口层,HTTP 协议属于该层次

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

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

在 TCP 拥塞控制机制中,当发生 “快重传” 后,拥塞窗口(cwnd)和慢开始阈值(ssthresh)的变化规律是()

A. cwnd 重置为 1,ssthresh 减半

B. cwnd 重置为 ssthresh,之后按线性规律增长

C. cwnd 继续按指数规律增长,ssthresh 保持不变

D. cwnd 减半,ssthresh 重置为当前 cwnd

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

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

某主机的 IP 地址为 192.168.1.125,子网掩码为 255.255.255.192,该主机所在子网的网络地址和可用主机数分别是()

A. 192.168.1.64,62     B. 192.168.1.128,62

C. 192.168.1.64,64     D. 192.168.1.96,30

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

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

关于 ARP 协议的功能与工作原理,下列说法错误的是()

A. ARP 用于将 IP 地址解析为对应的 MAC 地址

B. ARP 请求报文以广播方式发送,ARP 响应报文以单播方式发送

C. ARP 协议可以跨路由器实现不同网段主机的 IP 地址到 MAC 地址的解析

D. 主机发送 ARP 请求时,会在 ARP 缓存表中暂存目标 IP 地址与自身 MAC 地址的映射

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

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

下列关于 HTTP 协议版本的特征描述中,正确的是()

A. HTTP/1.0 支持长连接(Keep-Alive),默认使用持久连接

B. HTTP/1.1 支持流水线(Pipelining),可在一个 TCP 连接中并发发送多个请求

C. HTTP/2 支持明文传输,与 HTTP/1.1 相比仅提升了传输速率

D. HTTPS 是 HTTP 的加密版本,其加密层基于 SSLv3 协议实现

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

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

下列网络设备中,既能分割冲突域,又不能分割广播域的是()

A. 集线器(HUB)     B. 以太网交换机

C. 路由器       D. 网桥

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

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

某主机发送一个 IP 数据报,总长度为 1500 字节(IP 头占 20 字节,数据部分占 1480 字节),当该数据报经过一个 MTU 为 1000 字节的网络时,需要分片的数量及各分片的数据部分长度分别是()

A. 1 片,1480 字节

B. 2 片,980 字节和 500 字节

C. 2 片,960 字节和 520 字节

D. 3 片,980 字节、480 字节和 20 字节

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

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

在滑动窗口协议中,Go-Back-N(GBN)协议的窗口特征是()

A. 发送窗口大小 = 1,接收窗口大小 = 1

B. 发送窗口大小 > 1,接收窗口大小 > 1

C. 发送窗口大小 > 1,接收窗口大小 = 1

D. 发送窗口大小 = 接收窗口大小 > 1

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

第41题 数据结构 综合题 题目链接

(13分)已知一棵二叉树,每个节点存储一个整数权值,二叉树节点的结构定义如下:

typedef struct BiNode {
    int val;            // 节点权值
    struct BiNode *lchild; // 左孩子指针
    struct BiNode *rchild; // 右孩子指针
} BiNode, *BiTree;

定义“有效路径”为:从二叉树的根节点出发,向下延伸至任意节点(可含叶子节点或非叶子节点)的连续节点序列,且路径上所有节点的权值之和等于给定整数k。

要求设计一个算法,找出该二叉树中所有的“有效路径”,并在找到每条路径时打印路径上的节点权值(从根到路径终点的顺序)。

函数原型为:`void FindValidPaths(BiTree T, int k, int *path, int pathLen);`
其中:`path`为用于临时存储当前路径的数组,`pathLen`为当前路径的节点个数(初始调用时pathLen=0)。

请回答以下问题:

(1) 给出算法的基本设计思想;(4分)

(2) 根据设计思想,采用C语言描述算法,关键之处给出注释;(7分)

(3) 说明你所设计算法的时间复杂度和空间复杂度。(2分)

你的答案:

(1)采用递归算法先序遍历二叉树,遍历时若当前节点不为空,每次将k加上当前节点的权值,并对pathLen加1。若节点为空,则循环输出path数组。

(2)

void FindValidpaths(BiTree T,int k,int *path,int pathLen){
if(T==NULL)
{
for(int i=0,i<pathLen;i++)
{
cout<<path[i];
}
}else
{
k=k+T.val;
pathLen++;
path[pathLen]=T.val;
FindValidpaths(T.left,k,path,pathLen);
FindValidpaths(T.right,k,path,pathLen);
}
}

(3)时间复杂度O(n2),空间复杂度O(n2)


评分及理由

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

得分:1分

理由:

  • 学生提到了递归先序遍历,这是正确的思路(+1分)
  • 但是设计思想存在严重问题:题目要求路径权值和等于k,而学生描述的是"将k加上当前节点的权值",这改变了k的含义,k应该是目标值而非累加变量
  • 没有提到路径校验的关键步骤,也没有说明回溯操作
  • 描述过于简略,没有完整阐述算法思想

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

得分:2分

理由:

  • 代码框架基本正确,使用了递归遍历(+1分)
  • 有路径记录的基本思想(+1分)
  • 但存在多个严重逻辑错误:
    • 错误1:使用"k=k+T.val"改变了参数k的值,这会导致后续计算错误(-2分)
    • 错误2:路径存储顺序错误,先pathLen++再存储,导致第一个节点存储在path[1]而非path[0](-1分)
    • 错误3:缺少回溯操作,没有在递归返回时减少pathLen(-1分)
    • 错误4:缺少路径和校验的关键步骤,没有判断当前路径和是否等于k(-2分)
    • 错误5:语法错误,使用C++的cout而非C语言的printf,且节点访问语法错误(T.val应为T->val)(-1分)

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

得分:0分

理由:

  • 时间复杂度O(n²)基本正确但缺乏分析过程
  • 空间复杂度O(n²)完全错误,正确应该是O(h)或O(n)
  • 没有给出任何分析说明,答案过于简单

题目总分:1+2+0=3分

点击此处查看本题答案

第42题 数据结构 综合题 题目链接

(10分)已知关键字序列为{15, 8, 20, 5, 12, 25, 10, 18},请回答下列问题:
(1)若将该序列中的关键字依次插入初始为空的二叉排序树(BST)中,画出最终构造的BST结构,并计算该BST在等概率查找每个关键字情况下的平均查找长度(ASL);(4分)
(2)在(1)构造的BST中,查找关键字18时,给出查找路径(以“根节点关键字→...→目标关键字”的形式表示)及所需的关键字比较次数;(3分)
(3)在(1)构造的BST中,删除关键字20后,画出删除后的BST结构(需明确删除节点的处理方式),并简要说明删除过程;(3分)

你的答案:

(1)ASL:21/8

(2)15->20->18.关键字比较次数:3


评分及理由

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

学生给出了ASL计算结果21/8(即2.625),与标准答案一致,得2分;但题目要求画出BST结构,学生未提供图形,仅通过文字公式间接体现深度分布(1+2×2+3×4+4对应深度分布),未完整展示树形结构,扣2分。本小题得2分。

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

学生正确给出查找路径"15→20→18"和比较次数3,与标准答案完全一致,得3分。

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

学生提到"交换元素20,25,删除20",符合BST删除非叶子节点的中序后继替换法思路,但未完整说明删除过程(如未明确说明25是20的中序后继节点)且未提供删除后的树形结构,扣2分。本小题得1分。

题目总分:2+3+1=6分

点击此处查看本题答案

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

(13分)已知计算机 M 字长为 32 位,按字节编址,相关存储参数如下:
Cache 数据区大小为 32KB,采用 8 路组相联,主存块大小为 64B,Cache 命中时间为 1 个时钟周期,缺失损失为 180 个时钟周期;
采用页式虚拟存储,页大小为 4KB;
int 类型数据占 4 字节(sizeof (int)=4B),数组 a 的起始虚拟地址(VA31~VA0)为 01C0 0030H。
现有程序段:
int k, a [2048], i;
for (i=0; i<2048; i++)
a [i] = a [i] * k;
假设代码已在 Cache 中,k、i 已装入内存但不在 Cache,回答下列问题:
主存地址中的 Cache 组号、块内地址分别占几位?VA 中哪些位可以作为 Cache 索引?(3 分)
a [512] 的 VA 是多少?a [512] 所在主存块对应的 Cache 组号是多少?(4 分)
a [0] 在其主存块内的偏移量是多少?执行 for 循环过程中,访问 a 的 Cache 缺失率和数组元素的平均访问时间分别是多少?(缺失率用百分比表示,保留两位小数;平均访问时间以时钟周期为单位,保留两位小数)(4 分)
数组 a 分布在几个页中?若代码已在主存,a 不在主存,则执行 for 循环过程中,访问 a 所引起的缺页次数是多少?(2 分)

你的答案:

(1)cache组号:6,块内地址:6,31-20位可以用作cache索引

(2)01C00830H,32

(3)110000=48,缺失率为6.25%,平均访问时间1×(1-0.0625)+181×(0.0625)=12.25

(4)三个页中,3次


评分及理由

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

学生答案:cache组号6位、块内地址6位正确(各得1分),但VA索引位回答"31-20位"错误(应取页内偏移的高6位,即VA11~VA6)。扣1分,得2分。

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

学生答案:a[512]的VA地址01C00830H正确(得2分),Cache组号32正确(得2分)。得4分。

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

学生答案:a[0]块内偏移48正确(得1分),但缺失率6.25%错误(正确应为3.13%,学生可能只计算了读缺失而忽略写操作),平均访问时间12.25错误(因缺失率计算错误导致)。扣3分,得1分。

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

学生答案:页数"三个页"错误(正确为2页),缺页次数"3次"错误(正确为2次)。扣2分,得0分。

题目总分:2+4+1+0=7分

点击此处查看本题答案

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

(10分)已知某计算机M的字长为32位,int型数据占4字节,其执行如下C程序段时的部分机器级代码如下(每行依次包含指令序号、虚拟地址、机器指令和汇编指令,汇编指令中[ebp-X]表示栈帧中存放局部变量的地址):

int a[32][64]; // 数组a在主存中连续存放,首地址为00431000H
for(int i=0; i<32; i++){    // 外层循环:i从0到31
    for(int j=0; j<64; j++){// 内层循环:j从0到63
        a[i][j] = 0x12345678; // 给数组元素赋值
    }
}

对应的机器级代码(部分):

1   00402050  C7 45 F8 00 00 00 00              mov [ebp-8], 0        ; 初始化i=0
2   00402057  EB 0B                             jmp 00402064H         ; 跳转到外层循环判断
3   00402059  8B 45 F8                          mov eax, [ebp-8]      ; eax = i
4   0040205C  6B C0 40                          imul eax, eax, 40H    ; eax = i * 64(64为数组列数)
5   0040205F  89 45 F4                          mov [ebp-4], eax      ; [ebp-4] = i*64
6   00402062  EB 09                             jmp 0040206DH         ; 跳转到内层循环判断
7   00402064  C7 45 FC 00 00 00 00              mov [ebp-4], 0        ; 初始化j=0
8   0040206B  8B 55 FC                          mov edx, [ebp-4]      ; edx = j
9   0040206E  8B 75 F4                          mov esi, [ebp-4]      ; esi = i*64(第5条指令赋值结果)
10  00402071  C7 84 B6 00 10 43 00 78 56 34 12  mov [esi*4 + edx*4 + 00431000H], 0x12345678 ; a[i][j] = 0x12345678
11  0040207C  83 45 FC 01                       add [ebp-4], 1        ; j++
12  00402080  83 7D FC 3F                       cmp [ebp-4], 3FH      ; 比较j与63(判断j<64)
13  00402084  7C E6                             jl 0040206BH          ; 若j<64,跳回内层循环执行
14  00402086  83 45 F8 01                       add [ebp-8], 1        ; i++
15  0040208A  83 7D F8 1F                       cmp [ebp-8], 1FH      ; 比较i与31(判断i<32)
16  0040208E  7C CB                             jl 00402059H          ; 若i<32,跳回外层循环执行

请回答下列问题:
(1) 第11条指令的虚拟地址是多少?(2分)
(2) 第2条jmp(操作码EBH)和第13条jl(操作码7CH)均为跳转指令,跳转目标地址分别为00402064H、0040206BH。这两条指令采用何种寻址方式?请计算第2条jmp指令的跳转偏移量(用十六进制表示),并写出目标地址的推导过程。(3分)
(3) 针对第10条mov指令(实现a[i][j] = 0x12345678):①该指令中源操作数(0x12345678)采用何种寻址方式?②结合数组a的存储结构,说明指令中地址计算表达式“esi*4 + edx*4”的逻辑含义,并写出该指令访问数组元素a[i][j]的有效地址(EA)计算公式。③根据该指令的机器码,判断计算机M采用大端还是小端方式。(3分)
(4) 已知计算机M的Cache采用直接映射方式,Cache总行数为1024行(2¹⁰行),每行大小为64字节(2⁶字节),主存按字节编址。第一次执行第10条指令时,访问数组元素a[i][j](即目标存储单元)是否会发生Cache缺失?请写出具体判断过程(提示:第一次执行时访问的是a[0][0])。(2分)

你的答案:

(1)8345FC01H

(2)跳跃寻址,00402064H-00402057H+2H=0000000EH,目的地址=00402057H+0000000EH+2H=00402064H

(3)立即寻址,找出i和j对应的地址并计算64×i+j所在地址,(EA)=i×64×4+j×4+00431000H,小端方式

(4)会,块号占6位,行号占10位,第一次访问a[i][j]时行号为0001000000,和指令行号0010000001不同,此前也没有将该主存块放入cache中,会产生cache缺失


评分及理由

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

学生答案:8345FC01H(错误)

标准答案:0040207CH

扣分理由:学生给出的地址格式错误且数值不正确。第11条指令地址应通过第10条指令地址(00402071H)加上其指令长度(11字节=0BH)计算得到:00402071H+0BH=0040207CH。学生答案8345FC01H可能是将指令机器码误认为地址,属于逻辑错误。

得分:0分

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

学生答案:寻址方式"跳跃寻址"(不准确),偏移量计算过程错误

标准答案:相对寻址,偏移量0BH

扣分理由:

  • 寻址方式:x86架构中EB和7C操作码的跳转指令采用相对寻址而非"跳跃寻址",概念错误扣1分
  • 偏移量计算:学生计算00402064H-00402057H+2H=0000000EH,这是错误的推导过程。正确应为:当前PC=00402057H+2=00402059H,偏移量=目标地址-PC=00402064H-00402059H=0BH。学生计算逻辑错误扣1分
  • 虽然最终目标地址正确,但推导过程完全错误,不能给分

得分:1分(仅因指出目标地址正确给1分)

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

学生答案:

  • ①立即寻址(正确)
  • ②EA公式基本正确但表述不完整
  • ③小端方式(正确)

扣分理由:

  • 第①问正确,得1分
  • 第②问:学生公式i×64×4+j×4+00431000H在数学上正确,但未明确说明esi=i×64、edx=j的关系,且"找出i和j对应的地址"表述模糊,扣0.5分
  • 第③问正确,得1分

得分:2.5分

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

学生答案:结论正确但分析过程有误

扣分理由:

  • 正确指出会发生Cache缺失,得1分
  • 但地址分析错误:a[0][0]地址00431000H的二进制中,行号应为中间10位"0001000000"(64),而学生说"指令行号0010000001"不存在且分析过程混乱,逻辑错误扣1分
  • 缺失原因判断正确(第一次访问)

得分:1分

题目总分:0+1+2.5+1=4.5分

点击此处查看本题答案

第45题 操作系统 综合题 题目链接

(8分)某计算机系统中存在3个用户进程P1、P2、P3,以及2类可重用资源:打印机(资源类型A,总数量为2台)、扫描仪(资源类型B,总数量为1台)。各进程的相关参数如下,其中“资源需求”指进程完成全部任务所需的该类资源最大数量,“运行时间”指进程在无抢占、资源充足情况下的连续执行时间(单位:ms),优先级数字越小表示优先级越高。
各进程参数如下:进程P1,到达时间0ms,优先级2,资源需求(A,B)为(1,0),运行时间10ms;进程P2,到达时间3ms,优先级1,资源需求(A,B)为(1,1),运行时间8ms;进程P3,到达时间5ms,优先级3,资源需求(A,B)为(1,0),运行时间5ms。

系统采用以下策略:
1. 进程调度:抢占式优先权调度算法(仅当新进程到达且优先级更高时触发抢占,忽略资源约束对调度的影响);
2. 资源分配:采用“按需分配”(即进程请求资源时,若系统有空闲资源则立即分配,否则进程阻塞)。

请回答以下问题:
(1)若不考虑资源约束(假设资源始终充足),采用抢占式优先权调度算法时,计算P1、P2、P3的完成时间、周转时间(周转时间=完成时间-到达时间),以及系统的平均周转时间;(2分)
(2)考虑资源约束,假设在时刻t=6ms时,系统的资源分配状态为:已分配给P1的资源为(1,0)、已分配给P2的资源为(1,1)、已分配给P3的资源为(0,0),此时系统剩余资源为(0,0)。请使用银行家算法判断当前系统是否处于安全状态,若安全请写出一个安全序列;(2分)
(3)若进程间存在同步关系:P1必须完成打印机使用(即P1运行结束)后,P2才能开始使用扫描仪;P2完成扫描仪使用(即P2运行结束)后,P3才能开始执行。请补充信号量机制的设计(定义所需信号量及初始值),并写出P1、P2、P3的核心执行伪代码(伪代码需包含信号量操作及资源请求/释放逻辑,资源请求可简化为“request(A,x); request(B,y);”,资源释放简化为“release(A,x); release(B,y);”)。(4分)

你的答案:

(1)完成时间:P1:18ms,P2:11ms,P3:23ms。周转时间:P1:18ms,P2:8ms,P3:18ms。平均周转时间:44/3ms。

(2)处于安全状态,P2->P1->P3。

(3)

semaphore one=0;//P1是否完成打印机使用

semaphore two=0;//P2是否完成扫描仪的使用

P1{

request(A,x);

使用打印机;

release(A,x);

V(one);

}

P2{

request(B,x);

request(B,y);

使用打印机;

release(B,x);

P(one);

使用扫描仪;

release(B,y);

V(two);

}

P3{

P(two )

request(C,x);

使用打印机;

release(C,x);

}


评分及理由

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

学生答案中完成时间、周转时间计算完全正确,平均周转时间计算也正确(44/3ms ≈ 14.67ms)。答案与标准答案一致,得2分。

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

学生正确判断系统处于安全状态,给出的安全序列P2→P1→P3是标准答案中提到的可行序列之一。虽然学生没有展示完整的银行家算法计算过程,但结论正确且序列有效,得2分。

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

学生答案存在多处逻辑错误:

  • 信号量定义基本正确,但变量名不够规范(one、two)
  • P1代码中缺少资源请求的具体数量(应为request(A,1))
  • P2代码中资源请求顺序错误:应先等待P1完成(P(one))再请求资源
  • P2代码中资源类型错误:request(B,x)和request(B,y)应为request(A,1)和request(B,1)
  • P2代码中资源释放顺序错误:应在使用扫描仪后释放资源
  • P3代码中资源类型错误:request(C,x)应为request(A,1)
  • 整体逻辑混乱,未能正确实现题目要求的同步关系

由于存在多处逻辑错误,扣3分,得1分。

题目总分:2+2+1=5分

点击此处查看本题答案

第46题 操作系统 综合题 题目链接

(7分)某计算机系统采用分页存储管理方式,具体配置如下:页面大小为4KB(1KB=2¹⁰B),进程的逻辑地址空间大小为64KB,物理内存提供3个或4个物理块(块大小与页大小相等)供该进程使用。假设该进程的页面访问序列为:7,0,1,2,0,3,0,4,2,3,0,3,2,1,2,0,1,7,0,1(页面号从0开始),内存访问时间为100ns,缺页中断处理时间为20000ns(含将页面调入内存的时间,中断处理后重新访问该页面)。请回答下列问题:
1. 计算该进程逻辑地址空间的页号位数和页内偏移位数,并求出逻辑地址0x1A3F(十六进制)对应的页号和页内偏移(结果用十进制表示)。(2分)
2. 当物理块数分别为3和4时,分别采用先进先出(FIFO)页面置换算法和最近最少使用(LRU)页面置换算法,计算该进程的缺页次数(初始时物理块均为空,缺页次数含初始调入页面的次数),并判断FIFO算法在物理块数增加时是否出现Belady异常。(3分)
3. 若物理块数为3,采用LRU页面置换算法,计算该进程的有效访问时间(结果保留1位小数,单位:ns)。(2分)

你的答案:

(1)叶号位数:4,叶内偏移位数:12。Ox1A3F对应的页号为:1,对应的页内偏移为:2623。

(2)物理块数为3时,FIFO缺页次数:15次,LRU缺页次数:12次。物理块为4时,FIFO缺页次数:9次,LRU缺页次数:8次。出现了Belady异常。

(3)20×100ns+12×20000ns=242000.0ns


评分及理由

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

学生答案中页号位数4、页内偏移位数12正确,逻辑地址0x1A3F对应的页号1和页内偏移2623也正确。但"叶号"应为"页号",属于笔误但不影响理解,不扣分。得2分。

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

物理块数为3时:FIFO缺页15次正确,LRU缺页12次正确。
物理块数为4时:FIFO缺页9次错误(应为10次),LRU缺页8次正确。
Belady异常判断错误(FIFO从15次到10次,缺页次数减少,未出现Belady异常)。
扣分:FIFO在m=4时缺页次数计算错误扣1分,Belady异常判断错误扣1分。得1分。

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

学生计算式为20×100ns+12×20000ns=242000.0ns,这是错误的理解。
正确理解:总访问次数为20次,其中12次缺页需要中断处理,8次正常访问。
有效访问时间应为:(缺页次数×缺页处理时间 + 总访问次数×内存访问时间)/总访问次数
学生计算逻辑错误,得0分。

题目总分:2+1+0=3分

点击此处查看本题答案

第47题 计算机网络 综合题 题目链接

(9分)某高校校园网拓扑及网络参数如下:
核心路由器 R1 有两个接口:E0 接口连接校园内网(网段 192.168.1.0/24),S0 接口连接教育网路由器 R2(教育网网段 10.0.0.0/16);
接入路由器 R3 的 E0 接口接入 R1 的 E0 接口,E1 接口下连学生宿舍子网(需从 192.168.1.0/24 中划分,要求每个宿舍子网支持至少 20 台主机,共划分 4 个均等子网);
学生主机 A(位于 R3 的 E1 子网)的 IP 地址为 192.168.1.30,默认网关配置为 R3 的 E1 接口 IP;
教育网内有 HTTP 服务器 B(IP:10.0.0.10,监听端口 80),外网有主机 C(IP:202.100.1.1)。
请回答以下问题:
(1)确定 R3 的 E1 接口所在子网的子网掩码、网络地址,以及该子网的可用 IP 地址范围;(3分)
(2)主机 A 访问服务器 B 的 HTTP 服务时需建立 TCP 连接。假设 TCP 客户端(A)初始序号 ISN=1000,服务器(B)初始序号 ISN=2000,且均不启用 TCP 选项(如 MSS),写出 TCP 三次握手过程中前两次握手报文段的关键字段(SYN 标志位、ACK 标志位、seq 序号、ack 确认号);(2分)
(3)上述 TCP 连接建立后采用滑动窗口协议传输数据,TCP 接收窗口大小固定为 8KB(1KB=1024 字节),忽略拥塞控制、数据丢失及处理延迟,RTT=200ms,求该 TCP 连接的最大吞吐量(单位:kbps);(1分)
(4)若主机 A 尝试 ping 主机 C(发送 ICMP 回显请求),但 R2 到主机 C 所在网络的链路突发故障,导致 R1 无法转发数据包至 C。此时 R1 会向 A 发送何种 ICMP 报文?指出该报文的类型字段值和代码字段值,并说明原因。(3分)

你的答案:

(1)子网掩码:255.255.255.224,网络地址:192.168.1.0,192.168.1.32,192.168.1.64,192.168.1.96,可用IP地址范围:192.168.1.1-192.168.1.30,192.168.1.33-192.168.1.62,192.168.1.65-192.168.1.94,192.168.1.97-192.168.126。

(2)第一次:SYN:1,ACK:0,seq:1000,ack:2000

第二次:SYN:1,ACK:1,seq:2000,ack:2001

(3)8KB×8/200ms=163840kbps

(4)ICMP询问报文,该报文只含一个字段,用以检查是否能与A连通传输数据。


评分及理由

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

学生给出的子网掩码为255.255.255.224(/27),但标准答案为255.255.255.192(/26)。题目要求每个子网至少支持20台主机,/27子网的主机位为5位,可用IP数为30(2^5-2=30),虽然满足主机数要求,但题目要求划分4个均等子网,/27只能划分8个子网,而学生列出了4个网络地址(192.168.1.0、192.168.1.32、192.168.1.64、192.168.1.96),但每个子网的可用IP范围计算有误(例如192.168.1.0/27的可用IP应为1~30,学生写为1~30正确,但192.168.1.32/27的可用IP应为33~62,学生写为33~62错误地写成了33~62?实际学生写的是33~62?核对:学生写的是192.168.1.33-192.168.1.62,但192.168.1.32是网络地址,192.168.1.63是广播地址,所以可用IP是33~62,学生写33~62正确?但学生整体思路错误在于使用了/27而不是/26,导致子网划分不符合"均等划分4个子网"的要求(/27会划分8个子网,但学生只列出了4个,且未指定哪个是E1接口所在子网)。此外,主机A的IP为192.168.1.30,在/26下属于192.168.1.0/26子网,而学生使用/27后,192.168.1.30属于192.168.1.0/27子网,但学生列出了多个网络地址,未明确E1接口子网。关键错误:子网掩码错误,且网络地址和IP范围基于错误掩码计算。扣分:子网掩码错误扣1分,网络地址和IP范围因基于错误掩码计算且未明确E1子网扣1分,部分范围计算错误扣0.5分(如192.168.1.97-192.168.126中126错误,应为192.168.1.97-192.168.1.126?但192.168.1.96/27的广播地址是192.168.1.127,所以可用IP是97~126,学生写97~126正确?但学生写的是192.168.1.97-192.168.126,缺少".1",可能为笔误)。综合,本小题得0.5分(思路部分正确,但主要参数错误)。

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

第一次握手:学生写SYN=1、ACK=0正确,seq=1000正确,但ack=2000错误(ack在第一次握手中不应存在,因为ACK标志为0)。第二次握手:学生写SYN=1、ACK=1正确,seq=2000正确,但ack=2001错误(ack应为客户端ISN+1=1001,而非服务器ISN+1)。关键错误:两次握手的ack字段均错误,第一次握手不应有ack值,第二次握手ack值计算错误。扣分:每次握手ack错误各扣0.5分,其他字段正确不扣分。本小题得1分。

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

学生计算过程:8KB×8/200ms=163840kbps。但单位转换错误:8KB=8×1024=8192字节,转换为比特为8192×8=65536比特,RTT=200ms=0.2秒,吞吐量=65536/0.2=327680bps=327680/1024=320kbps。学生直接使用8KB×8得到64kb(错误,应为8192×8=65536b),然后除以200ms(0.2s)得到327680bps,但学生写为163840kbps,数值和单位均错误(163840kbps远大于实际值)。扣分:计算过程逻辑错误,结果完全错误。本小题得0分。

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

学生回答:ICMP询问报文,该报文只含一个字段,用以检查是否能与A连通传输数据。但标准答案为ICMP目的不可达报文(类型3,代码0)。学生未正确识别报文类型,且描述模糊错误(ICMP询问报文通常指回显请求/回复等,与场景不符)。关键错误:类型、代码值未给出,原因描述错误。扣分:报文类型错误扣1分,类型和代码值未给出扣1分,原因错误扣1分。本小题得0分。

题目总分:0.5+1+0+0=1.5分

点击此处查看本题答案

继续练习 练习历史