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

科目组合

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

01: 37: 50
答题卡
得分 116/150
答对题目数 34/47
评价

答题情况分析报告

正确: 34
错误: 13
未答: 0
总分: 116/150
正确率 72.3%
第1题 数据结构 单选题 题目链接

已知带头结点的非空单链表L的头指针为 h,指针 p 指向L中间的一个链表结点(不是第一个和最后一个结点)。q=p->next, p->next=q->next, q->next=h->next, h->next=q。这段代码的功能是()。

A、把q指向的结点插入到p的后面

B、把p指向的结点插入到q的后面

C、把p指向的结点插入到h的后面

D、把q指向的结点插入到h的后面

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

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

表达式 x+y*(z-u)/v 的等价后缀是(  )

A.xyzu-*v/+

B.xyzu-v/*+

C.+x/*y-zuv

D.+x*y/-zuv

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

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

p、q、v 都是二叉树 T 中的结点,二叉树 T 的中序遍历为…, p, v, q, …,其中v有两个孩子结点,则下列说法正确的是( )。

A.p 没右孩子,q 没左孩子

B.p 没右孩子,q 有左孩子

C.p 有右孩子,q 没左孩子

D.p 有右孩子,q 有左孩子

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

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

给定无向图的邻接多重表,求顶点b、d的度()

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

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

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

下列数据结构中,不适合直接使用折半查找的是()

I 有序链表

II 无序数组

III 有序静态链表

IV 无序静态链表

A.仅1、II

B.仅II、IV

C.仅、II、 IV

D.I、II、III、IV

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

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

KMP算法使用修正后的 next 数组进行模式匹配,模式串 S = "aabaab",当主串中某字符与 S 中某字符失去配对时,S 将向右滑动的最长距离是(  )

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

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

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

一棵二叉搜索树如下图所示,K1、K2、K3 分别是对应结点中保存的关键字、三角形表示子树。则子树T 中任一结点中保存的关键字 X 满足的是( )。

A. X<K1

B. X>K2

C. K1<X<K3

D. K3<X<K2

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

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

使用快速排序算法对含 N(N>=3) 个元素的数组 M 进行排序,若第一趟排序将除枢轴外的N-1个元素划分为 P 和 Q 两个部分,则下列叙述中,正确的是( )。

A. P 和 Q 块间有序

B. P 和 Q 均块内有序

C. P 和 Q 的元素个数大致相等

D. P 和 Q 中均不存在相等的元素

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

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

已知关键字序列 28, 22, 20, 19, 8, 12, 15, 5是大根堆(最大堆),对该堆进行两次删除操作后,得到的新堆是( )。

A. 20, 19, 15, 12, 8, 5

B. 20, 19, 15, 5, 8, 12

C. 20, 19, 12, 15, 8, 5

D. 20, 19, 8, 12, 15, 5

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

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

初始有三个升序序列(3, 5)、(7, 9)、(6),若按从左至右的次序选择有序序列进行二路归并排序,则关键字之间的总比较次数是()。

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

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

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

在外排序中,利用败者树对初始为升序的归并段进行多路归并,败者树中记录"冠军"的结点保存的是( )

A、最大关键字

B、最小关键字

C、最大关键字所在的归并段号

D、最小关键字所在的归并段号

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

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

C 语言代码如下:

int i = 32777;

short si =i;

int j=si;

执行上述代码段后, j 的值为( )。

A. -32777    B. -32759    C. 32759    D. 32777

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

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

将汇编语言程序中实现特定功能的指令序列定义成一条伪指令。下列选项中,CPU能理解并直接执行的是

 Ⅰ 伪指令 Ⅱ 微指令 Ⅲ 机器指令 Ⅳ汇编指令

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

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

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

某科学实验中,需要使用大量的整型参数,为了在保证表数精度的基础上提高运算速度,需要选择合理的数据表示方法。若整型参数a和β的取值范围分别为-2^20~2^20、-2^40~2^40,则下列选项中,a和B最适宜采用的数据表示方法分别是(  )

A. 32 位整数、32 位整数

B. 单精度浮点数、单精度浮点数

C. 32 位整数、双精度浮点数

D. 单精度浮点数、双精度浮点数

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

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

下列关于整数乘法运算的叙述中,错误的是( )。

A. 用阵列乘法器实现乘运算可以在一个时钟周期完成

B. 用 ALU 和移位器实现的乘运算无法在一个时钟周期内完成

C. 变量与常数的乘运算可编译优化为若干条移位及加/减运算指令

D. 两个变量的乘运算无法编译为移位及加法等指令的循环实现

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

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

对于页式虚拟存储管理系统,下列关于存储器层次结构的叙述中,错误的是()

A. Cache-主存层次的交换单位为主存块,主存-外存层次的交换单位为页

B. Cache-主存层次替换算法由硬件实现,主存-外存层次由软件实现

C. Cache-主存层次可采用回写法写策略,主存-外存层次通常采用回写法

D. Cache-主存层次可采用直接映射,主存-外存层次通常采用直接映射

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

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

某计算机按字节编址,采用页式虚拟存储管理方式,虚拟地址为32位,主存地址为30位,页大小为1 KB。若TLB共有32个表项,采用4路组相联映射方式,则TLB表项中标记字段的位数至少是()

A.17    B.18    C.19    D.20
 

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

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

下列事件中,不是在MMU地址转换过程检测的是()

A.访问越权

B.Cache缺失

C.页面缺失

D.TLB缺失
 

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

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

对于采用“取指、译码/取数、执行、访存、写回”5 段流水线的 RISC 数据通路,下列关于指令流水线数据冒险处理的叙述中,错误的是( )。

A. 相邻两条指令中的操作数相关可能引起数据冒险

B. 在数据相关的指令间插入“气泡”能避免数据冒险

C. 所有数据冒险都可以通过加入转发(旁路)电路解决

D. 所有数据冒险都能通过调整指令顺序和插入 nop 指令解决

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

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

存储器总线的时钟频率为 420MHz,总线宽度为 64 位,每个时钟周期传送2 次数据,支持突发传输,最多传 8 次,第一个时钟传地址和读写命令,从第 4~7 个始终连续传8 次。总线带宽最大传输速率为( )。

A. 3.84GB/s    B. 6.72GB/s    C. 30.72 GB/s    D. 53.76GB/s

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

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

下列关于中断I/O方式的叙述中,错误的是

A. 中断屏蔽字用于确定中断响应的优先级

B. 保存断点和程序状态字在中断响应阶段完成

C. 保存通用寄存器和设置新中断屏蔽字由软件实现

D. 单重中断方式下中断处理时 CPU 处于关中断状态

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

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

DMA 控制 I/O 方式下,设备的输入/输出由 DMA 控制器控制完成,此时,DMA 控制器控制的数据传输通路位于

A. CPU 和主存之间

B. CPU 和 DMA 控制器之间

C. 设备接口和主存之间

D. 设备接口和 DMA 控制器之间

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

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

下面关于中断、异常和系统调用的叙述中,错误的是

A. 中断或异常发生时,CPU 处于内核态

B. 每个系统调用都有对应的内核服务例程

C. 中断处理程序开始执行时,CPU 处于内核态

D. 系统添加新类型设备时,需注册相应的中断服务例程

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

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

下列选项中,操作系统在终止进程时不一定执行的是

A. 终止子进程

B. 回收分配的内存资源

C. 撤销进程 PCB

D. 回收进程占用的设备

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

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

在支持页式存储管理的系统中,进程切换时操作系统要执行的操作是

Ⅰ. 更新 PC(程序计数器) 值

Ⅱ. 更新栈基址寄存器值(ebp)

Ⅲ. 更新页表基址寄存器值

A. 仅Ⅲ

B. 仅Ⅰ、Ⅱ

C. 仅Ⅰ、Ⅲ

D. Ⅰ、Ⅱ、Ⅲ

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

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

文件系统需要额外的外存空间记录空闲块的位置,占用外存空间大小与当前空闲块数量无关的是()。

A.位示图    B.空闲表    C.成组链接    D.空闲链表

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

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

回收分区时,仅合并大小相等的空闲分区的算法是( )。

A. 伙伴算法    B. 最佳适应算法    C. 最坏适应算法    D. 首次适应算法

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

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

若进程 P 中有一个线程 T,打开文件后获得 fd,再创建线程 Ta、Tb,则线程Ta、Tb 可共享的资源是( )。

Ⅰ. 进程 P 的地址空间    Ⅱ.线程 T 的栈    Ⅲ. fd

A. 仅Ⅰ

B. 仅Ⅰ、Ⅲ

C. 仅Ⅱ、Ⅲ

D.Ⅰ、Ⅱ、Ⅲ

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

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

以下系统调用中,包含文件按名查找功能的系统调用是( )。

A. open()    B. read()    C. write()    D. close()

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

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

假设某系统使用时间片轮转调度算法进行 CPU 调度,时间片大小为 5 ms,系统共有 10 个进程,初始时均处于就绪队列,执行结束前仅处于执行态或就绪态。若队尾的进程 P 所需 CPU 时间最短,时间为 25 ms。在不考虑系统开销的情况下,则进程 P 的周转时间为

A. 200 ms

B. 205 ms

C. 250 ms

D. 295 ms

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

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

键盘中断服务例程执行结束时,所输入的数据存放位置是() 。

A.用户缓冲区

B.CPU的通用寄存器

C.内核缓中区

D.键盘控制器的数据缓冲区

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

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

磁道数400(号为0~399),用循环扫描算法(CSCAN)进行调度。完成对200号磁道的请求后,磁头向磁道号减小的方向移动,若还有7个请求,磁道号分别为300,120,110,0,160,210,399,则完成上述请求后磁头移动的距离是()

A. 599    B. 619    C. 788    D. 799

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

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

若分组交换网络及每段链路的带宽如下图,则 H1 到 H2 的最大吞吐量约为()。

A. 1Mbps    B. 10Mbps    C. 100Mbps    D. 1000Mbps

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

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

在下列二进制数字调制方法中,需要 2 个不同频率载波的是()。

A. ASP    B. PSK    C. FSK    D. DPSK

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

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

如题 35 图所示的支持VLAN 划分的交换机,已按端口划分了 3 个VLAN,部分端口连接主机的IP 地址和 MAC 地址如图中所示,ARP 表结构为<IP 地址,MAC 地址,TTL>。下列选项中,不会出现在 H4 的 ARP 表中的是( )。

A. 192.168.3.81, 00-18-A2-3B-36-21, 14:32:00

B. 192.168.3.91, 00-3E-C2-39-12-B5, 14:37:00

C. 192.168.3.125, 00-E5-78-4A-09-B2, 14:45:00

D. 192.168.3.129, 00-08-6E-05-A7-82, 14:52:00

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

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

在采用CSMA/CA 的 802.11无线局域网中,DIFS=128us,SIFS=28us,RTS、CTS和ACK帧的传输时延分别是3us,2us 和 2us,忽略信号传播时延,若主机A欲向AP发送一个总长度为1998B的数据帧,无线链路带宽为54Mbps,则隐藏站B到AP发送的CTS帧时,没置的网络分配向量NAV的值是()

A.326us    B.354us    C.385us    D.513us

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

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

主机甲通过选择重传(SR)滑动窗口协议向主机乙发送帧的部分过程如下图所示。F为数据帧,ACKx为确认帧,x是位数为比特的序号。乙只对正确接收的数据帧进行独立确认。发送窗口与接收窗口大小相同且均为最大值。甲在t1时刻和t2时刻发送的数据帧分别是(  )

A. F1、F3      B. F1、F4      C. F3、F1      D. F4、F1

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

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

假设主机H通过TCP向服务器发送长度为3000B的报文,往返时间RTT=10ms,最长报文段寿命MSL=30s,最大报文段长度MSS=1000B,忽略TCP段的传输时廷,报文传输结束后H首先请求断开连接,则从H请求建立TCP连接时刻起,到H进入CLOSED状态为止,所需时间至少是(  )

A.30.03s

R.30.04s

C.60.03s

D.60.04s
 

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

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

若UDP协议在计算校验和过程中,计算机得到中间结果为1011 1001 1011 0110时,还需要加上最后一个16位数0110 0101 1100 0101,则最终计算得到的校验和是()

A. 0001 1111 0111 1011

B. 0001 1111 0111 1100

C. 1110 0000 1000 0011

D. 1110 0000 1000 0100
 

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

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

若浏览器不支持并行TCP连接,使用非持久的HTTP/1.0协议请求浏览1个web页,该页中引用同一个网站上7个小图像文件,则从浏览器传输web页请求建立TCP连接开始,到接收完所有内容为止,所需要的往返时间RTT数至少是()

A. 4

B. 9

C. 14

D. 16

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

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

(13分)2023年10月26日,神州十七号载人飞船发射取得圆满成功,再次彰显了中国航天事业的辉煌成就。载人航天工程是包含众多子工程的复杂系统工程,为了保证工程的有序开展,需要明确各子工程的前导工程。以协调各子工程的实施。该问题可以简化、抽象为有向图的拓扑序列问题。已如有向图G采用邻接矩阵存储,类型定义如下:

typedef struct //图的类型定义
{
    int numVertices, numEdges; //图的顶点数和有向边数
    char verticesList[MAXV]; //项点表,MAXV为以定义常量
    int Edge[MAXV][MAXV]; //知接矩阵
}MGraph;

请设计算法:int uniquely(MGraph G)。判定G是否存在唯一的拓扑序列,若是则返回1,否则返回0。
要求:
(1)给出算法的基本设计思想(4分)

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

你的答案:

(1)统计入度:遍历邻接矩阵,计算每个顶点的入度(即指向该顶点的边数)。

入队:将所有入度为 0 的顶点存入栈或队列(这些是没有任何前导工程的任务)。

循环处理:从栈/队列中取出一个顶点。

输出该顶点(或存入结果数组)。

遍历该顶点的所有邻接点,将它们的入度减 1。

如果某个邻接点的入度减为 0,则将其入队。

判断回路:如果输出的顶点数小于图中的总顶点数 n,说明图中存在环(即工程逻辑冲突,A依赖B,B又依赖A)。

(2)

#include <stdio.h>
#include <stdbool.h>

#define MAXV 100 // 假设最大顶点数

typedef struct {
    int numVertices, numEdges;
    char verticesList[MAXV];
    int Edge[MAXV][MAXV];
} MGraph;

// 拓扑排序函数
bool TopologicalSort(MGraph G) {
    int indegree[MAXV] = {0}; // 存储每个顶点的入度
    int stack[MAXV];          // 辅助栈
    int top = -1;
    int count = 0;            // 记录已输出的顶点数

    // 1. 计算所有顶点的入度
    for (int i = 0; i < G.numVertices; i++) {
        for (int j = 0; j < G.numVertices; j++) {
            if (G.Edge[i][j] != 0) {
                indegree[j]++; // i -> j 有边,j 的入度加1
            }
        }
    }

    // 2. 将入度为 0 的顶点压入栈
    for (int i = 0; i < G.numVertices; i++) {
        if (indegree[i] == 0) {
            stack[++top] = i;
        }
    }

    // 3. 开始排序
    printf("拓扑序列为: ");
    while (top != -1) {
        int v = stack[top--]; // 出栈
        printf("%c ", G.verticesList[v]);
        count++;

        // 检查 v 的所有邻接点
        for (int i = 0; i < G.numVertices; i++) {
            if (G.Edge[v][i] != 0) {
                indegree[i]--; // 移除 v 后,邻接点入度减1
                if (indegree[i] == 0) {
                    stack[++top] = i;
                }
            }
        }
    }

    // 4. 结果判断
    if (count < G.numVertices) {
        printf("\n错误:图中存在环路,无法形成拓扑序列。\n");
        return false;
    }
    
    printf("\n工程安排有序,排序成功。\n");
    return true;
}


评分及理由

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

学生给出的基本设计思想描述了拓扑排序的标准过程:计算入度、将入度为0的顶点入栈/队列、循环处理、更新邻接点入度、判断回路。但该描述仅针对一般拓扑排序,未明确说明如何判断拓扑序列是否唯一。判断唯一性的关键是在每一步中只能有一个入度为0的顶点可供选择,而学生的描述中未强调这一点。因此,设计思想不完整,扣2分。

得分:2分

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

学生实现的代码是一个标准的拓扑排序函数,但存在以下问题:

  1. 函数名为TopologicalSort,返回类型为bool,与题目要求的int uniquely(MGraph G)不符,属于接口错误。
  2. 函数功能是输出拓扑序列并判断是否存在拓扑排序(即是否有环),但未判断拓扑序列是否唯一。代码中使用栈(后进先出)存储入度为0的顶点,但未在每一步检查栈中是否只有一个元素(即是否同时只有一个入度为0的顶点)。因此,该算法无法判断唯一性。
  3. 代码中包含了打印输出(printf),题目未要求输出序列,属于多余操作,但未影响核心逻辑,不扣分。

由于代码未实现题目要求的唯一性判断功能,属于严重逻辑错误,扣5分;接口错误扣1分。

得分:3分

题目总分:2+3=5分

点击此处查看本题答案

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

(10分)将关键字序列20,3,11,18,9,14,7,依次存储到初始值为空,长度为11的散列表中,散列函数H(key) = ( key * 3) %11,H (key〉计算机出的初始散列地址为H0,发生冲突时探查地址序列是H1,H2,H3,....,其中,Hk = (H0+k^2)%11,K=1,2,3....,请回答下列问题。
(1)画出所构造的HT。并计算HT的域装因子(6分)

(2)给出在HT中查找关键字14的关键字比较序列(2分)

(3)在HT中查找关键字8,确认查找失败时的散列地址是多少?(2分)

你的答案:


评分及理由

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

学生答案中给出了散列表的最终状态,但关键字的排列顺序与标准答案不完全一致,且未明确给出每个关键字的正确散列地址。从学生答案看,关键字序列为“11 14 7 20 9 3 18”,但未标注它们对应的地址。标准答案中地址0是11,地址2是14,地址3是7,地址5是20,地址6是9,地址9是3,地址10是18。学生答案的顺序似乎是按地址0到10列出关键字,但中间有缺失(地址1、4、7、8为空),且顺序“11 14 7 20 9 3 18”若对应地址0-10,则地址1为14、地址2为7等,这与标准答案冲突。因此,学生未正确画出散列表HT的结构。此外,学生未计算装载因子。因此,本小题扣分严重,但考虑到可能因识别或排版问题导致表格错乱,且核心关键字列表基本正确(包含了所有7个关键字),给部分分数。

得分:2分(满分6分)

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

学生答案给出了查找关键字14的比较序列:先计算H(14)=9,与3比较不命中;再计算H1=(9+1)%11=10,与18比较不命中;再计算H2=(9+4)%11=2,与14比较命中。此过程与标准答案完全一致,思路正确,计算无误。

得分:2分(满分2分)

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

学生答案直接给出“7”,即确认查找失败时的散列地址是7。标准答案中,查找关键字8时,经过一系列二次探查,最终在地址7发现为空,确认查找失败,散列地址为7。学生答案结果正确,但未展示计算过程。根据题目要求,只需给出确认查找失败时的散列地址,因此答案正确。

得分:2分(满分2分)

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

点击此处查看本题答案

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

(13分)假定计算机M字长为32位。按字节编址,采用32位定长指令字,指令add slli 和 lw的格式、编码和功能说明如题43 (a)图所示。

其中R[x]表示通用寄存器x的内容,M[x]表示地址为x的存储单元内容, shamt为移位位数,imm为补码表示的偏移量。题43(b)图给出了计算机M的部分数据通路及其控制信号(用箭头虚线表示),其中,A和B分别表示从通用寄存器rs1和rs2中读出的内容,IR[31:20]表示指令寄存器中的高12位。控制信号Ext为0、1时扩展器分别实现零扩展,符写扩展ALUctr为000、001、010时ALU分别实现加、减、逻辑左移运算。

请回答下列问题
(1)计算机M最多有多少个通用寄存器?为什么shamt字段占5位?(2分)

(2)执行add指令时,控制信号ALUBsrc的取值应该是什么?若rs1和rs2寄存器内容分别是8765 4321H和9876 5432H,则add指令执行后,ALU输出端F、OF和CF的结果分别是什么?若设add指令处理的是无符号整数,则应根据哪个标志判断是否溢出(3分)

(3)执行slli指令时,控制信号Ext 的取值可以是0也可以是1,为什么?(2分)

(4)执行lw指令时,控制信号Ext、ALUctr的取值分别是什么?(2分)

(5)若一条指令的机器码是A040 A103H,则该指令一定是lw指令,为什么?(2分)

(6)若执行该指令时,R[01H]=FFFF A2D0H,则所读取数据的存储地址是多少?(2分)

你的答案:


评分及理由

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

学生回答:通用寄存器数量为32个,理由是指令中寄存器字段占5位(2^5=32);shamt占5位是因为字长32位,左移位数范围0~31,需要5位表示(log₂32=5)。
与标准答案一致,得2分。

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

学生回答:ALUBsrc=0;F=1FDB 9753H(第一次识别为1 PDB 9753H,第二次为1FD3 9753H,但根据上下文可判断应为1FDB 9753H,属于识别误差,不扣分);OF=1;CF=1;判断无符号溢出用CF。
标准答案中F=1FDB 9753H,OF=1,CF=1,且无符号溢出由CF判断。学生答案核心正确,得3分。

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

学生回答:slli指令位移只用低5位,与高位及扩展位无关,所以Ext取0或1均可。
与标准答案(高12位最高位为0,零扩展和符号扩展效果相同)表述不同但逻辑正确,得2分。

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

学生回答:Ext=1,ALUctr=000。
与标准答案一致,得2分。

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

学生未直接回答“为什么一定是lw指令”,但第(6)问中识别了指令码并指出高12位为A04H,且lw指令opcode为0000011。结合上下文可推断学生理解lw指令的识别依据(高12位非全0,且opcode匹配),但本问未明确说明。根据“禁止扣分”原则,若识别结果中包含正确信息且逻辑可推,不扣分。但本问要求解释原因,学生未给出,故扣1分,得1分。

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

学生回答:A04H符号扩展为FFFF FA04H,与R[01H]=FFFF A2D0H相加得F9CD4H(第一次识别为F9CD4H,第二次也为F9CD4H)。
标准答案为FFFF 9CD4H。学生计算错误(FA04H + A2D0H 应为 19CD4H,取低32位为FFFF 9CD4H),但思路正确(立即数符号扩展后与基址相加)。因计算错误扣1分,得1分。

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

点击此处查看本题答案

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

(10分)对于题43中的计算机M,C语言程序Р包含的语句"sum+=a[i];",在M中对应的指令序列S如下:

slli r4, r2, 2  //R[r4] <- R[r2]<<2
add r4, r3, r4  //R[r4] <- R[r3]+R[r4]
lw r5, 0(r4)    //R[r5] <- M[R[r4]+0]
add r1, r1, r5  //R[r1] <- R[r1]+R[r5]

已知变量i,sum和数组a都为 int 型,通用寄存器r1 - r5的编号为01H-05H。请回答下列问题。

(1)根据指令序列s中每条指令的功能,写出存放数组a的首地址、变参i和sum的通用寄存器编号(3分)

(2)已知M为小端方式,计算机采用页式存储管理方式。页大小为4KB。若执行到指令序列s中第1条指令时,i=5且r1和r3的内容分别为0000 1332H和0013 DFF0H。从地址0013 DFF0H开始存储单元,内容如题44图所示。则执行"sum+=a[i]:"语句后。a[i]的地址、a[i]和 sum 的机器数分别是什么(用十六进制表示)?a[i]所在页的页号是多少?在此次执行中,数据组a至少存放在几页中?(5分)

(3)指令"slli r4, r2, 2"的机器码是什么(用十六进制表示)?若数组a改为short类型,则指令序列存到S中slli指令的汇编形式应是什么?(2分)

你的答案:


评分及理由

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

学生答案指出:a在r3,i在r2,sum在r1。这与标准答案(数组a首地址在r3,i在r2,sum在r1)完全一致。虽然表述上“a在r3”不如“数组a的首地址在r3”精确,但在计算机组成原理的上下文中,这是可以接受的等价表述。因此,本题得满分3分。

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

学生的两次识别结果核心内容一致,我们综合评判:
1. a[i]的地址:学生答案为“0013 E0004H”,标准答案为“0013 E004H”。学生答案多了一个“0”,这很可能是识别错误(将“0013E004H”误识别为“0013 E0004H”),属于误写。根据禁止扣分原则,不扣分。
2. a[i]的机器数:学生答案为“F ECDCH”或“FECDCH”,标准答案为“FFFF ECDCH”。学生答案缺少了高16位的“FFFF”,这是一个严重的逻辑错误,表明学生可能未正确理解小端存储和32位整数的表示。应扣1分。
3. sum的机器数:学生答案为“0 000EH”或“0000EAH”。第二次识别的“0 000EH”与标准答案“0000 000EH”在数值上一致(忽略前导零),但第一次的“0000EAH”是错误的。根据“只要其中有一次回答正确则不扣分”的原则,此处不扣分。
4. a[i]所在页的页号:学生答案为“0013EH”,与标准答案一致,得1分。
5. 数组a至少存放的页数:学生答案为“2页”,与标准答案一致,得1分。
综合以上,本小题在a[i]机器数上扣1分,其余部分不扣分。得分:1(地址)+0(机器数)+1(页号)+1(页数)=3分。

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

学生答案指出:
1. 机器码:答案为“0021 2213H”,与标准答案完全一致,得1分。
2. 修改后的汇编形式:答案为“slli r4, r2, 1”,与标准答案完全一致,得1分。
因此,本小题得满分2分。

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

点击此处查看本题答案

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

(7分)某计算机按字节编址,采用页式虚拟存储管理方式,虚拟地址和物理地址的长度均为32位,页表项的大小为4字节,页大小为4MB,虚拟地址结构如下:

进程Р的页表起始虚拟地址为 B8C0 0000H ,被装载到从物理地址 6540 0000H 开始的连续主存空间中。

请回答下列,用十六进制表示:

(1)若CPU在执行进程P的过程中,访问虚拟地址1234 5678H时发生了缺页异常,经过缺页异常处理和MMU地式转换后得到的物理地址是 BAB4 5678H。在此次缺页异常的处理中,需要为新缺页分配页框并更新相应的页表项,则该页表项的虚拟地址和物理地址分别是什么?该页表项中的页框号更新后的值是什么?(3分)

(2)进程Р的页表所在页的页号是什么?该页对应的页表项的虚拟地址是什么?该页表项中的页框号是多少?(4分)

你的答案:


评分及理由

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

学生答案中,页表项虚拟地址计算为 B8C0 0120H,物理地址计算为 6540 0120H,页框号计算为 2EAH,与标准答案完全一致。虽然学生使用了“48H << 2”的写法(等价于乘以4),但计算过程和结果正确。因此,本题得满分3分。

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

本题共三问:页号、页表项虚拟地址、页框号。
1. 页号计算:学生两次识别结果均正确计算出页号为 2E3H,得1分。
2. 页表项虚拟地址计算:此问是核心难点。标准答案为 B8C0 0B8CH。学生第一次识别结果为 B8C0 038CH,第二次为 B8C0 0080H,两者均错误。错误原因在于计算偏移量时,误将页号(2E3H)乘以4的操作写成了对页表起始地址 B8C0 0000H 进行左移操作(<< 2),这是严重的逻辑错误。正确的计算应为:B8C0 0000H + (2E3H * 4) = B8C0 0000H + B8CH = B8C0 0B8CH。因此,此问不得分。
3. 页框号计算:学生两次识别结果均正确计算出页框号为 195H,得1分。
综上,第(2)小题共得到 1(页号)+ 0(虚拟地址)+ 1(页框号)= 2分。

题目总分:3+2=5分

点击此处查看本题答案

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

(8分)计算机系统中的进程之间往往需要相互协作以完成一个任务,在某网络系统中缓冲区B用于存放一个数据分组,对B的操作有C1、C2和C3。将一个数据分组写入B中,C2从B中读出一个数据分组,C3对B中的数据分组进行修改。要求B为空时才能执行C1,B非空时才能执行C2和C3。请回答下列问题。

(1)假设进程P1和P2均需执行C1,实现C1的代码是否为临界区?为什么?(2分)

(2)假设B初始为空,进程P1执行C1一次,进程P2执行C2一次。请定义尽可能少的信号量。并用wait( ),signal( )操作描述进程P1、P2之间的同步或互斥关系,说明所用信号量的作用及初值。(3分)

(3)假设B初始不为空,进程P1和P2各执行C3一次,请定义尽可能少的信号量。并用wasit( )、 signal( ) 操作描述进程P1和P2之间的同步或互斥关系,说明所用信号量的作用及初值。(3分)

你的答案:


评分及理由

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

得分:2分。
理由:学生明确指出C1的执行需要互斥(“P₁与P₂互斥执行C₁”),这与标准答案中“实现C1的代码是临界区”的核心观点一致。尽管表述简略,但准确回答了问题本质。

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

得分:1分。
理由:学生识别出了P1和P2之间存在同步关系,并定义了一个初值为0的信号量S用于同步,这是正确的。但是,答案存在严重的逻辑错误和缺失:
1. 逻辑错误(扣2分):学生的代码只解决了同步问题(P1先C1,P2后C2),但完全没有解决互斥问题。根据题目要求,对缓冲区B的写入操作C1本身是临界区,需要互斥访问,而学生的代码中P1和P2的C1/C2操作没有使用互斥信号量保护,可能导致多个进程同时访问缓冲区,造成数据不一致。
2. 信号量命名不完整(“Semaphore =0;”),但根据上下文可判断其意图,属于表述瑕疵,不额外扣分。
因此,由于缺少关键的互斥保护机制,扣2分。

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

得分:3分。
理由:学生定义了初值为1的信号量mutex用于互斥(“Semaphore mutex =1;”)。虽然只给出了信号量定义,没有写出具体的wait/signal操作代码,但题目第(3)问的核心要求是“定义尽可能少的信号量”并“说明所用信号量的作用及初值”。学生正确指出了解决两个进程互斥执行C3操作所需的互斥信号量及其初值,思路与标准答案完全一致。未写出的代码部分可视为省略,不扣分。

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

点击此处查看本题答案

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

(9分)网络空间是继陆海空地之后的"第五疆域",网络技术是网络疆域建设与治理的基础。路由算法与协议是网络核心技术之一。对其准确认知,合理选择与应用,对网络建设十分重要。假设现有互联网中的4个自治系统互连拓扑示意图如题47图所示。其中,AS1运行内部网关协议RIP;AS3规模较小,自治系统内任意两个主机间通信,经过路由器数不超过15个;AS4规模较大,自治系统内任意两个主机间通信,经过路由器数量可能超过20个。

请回答下列问题:

(1)若仅有RIP和 OSPF 内部网关协议供选择,则AS4应选择哪个协议?(1分)

(2)若AS3中的某主机向本自治系统另一主机发送 1 个 IP 分组,为确保该 IP 分组能正常接收,则该 IP 分组的初始TTL值应至少设置为多少?(1分)

(3)设AS1中的路由器同一时刻启动,启动后立即构建并交换初始距离向量,之后,每隔30s交换一次最新的距离向量。则从交换初始距离向量时刻算起,R11~R16路由器均获到达网络 210.2.4.0/24 的正确路由,至少需多长时间?(2分)

(4)R44向R13通告到达网络136.5.16.0/20路由时,由BGP协议哪类会话完成?通过哪个BGP报文通告?R13通过BGP协议的哪类会话将该网络可达性信息通告给R14和R15?(3分)

(5)若R14和R15均收到分别由R11、R12、R13通告的到达网络136.5.16.0/20的可达性信息为:
目的网络:136.5.16.0/20,AS路径:AS2 AS8 AS19,下一跳:R11
目的网络:136.5.16.0/20,AS路轻:AS3 AS7 AS11 AS19,下一跳:R12
目的网络:136,5.16.0/20,AS路径:AS4 AS10 AS19,下一跳:R13
则在无策略约束情况下,R14和R15更新路由表后,各自路由表中到达网络136.5.16.0/20路由的下一跳分别是什么(用路由器名称表示)?(2分)

你的答案:


评分及理由

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

学生答案正确,选择了OSPF。理由:AS4规模较大,可能超过15跳,RIP有跳数限制,OSPF适合大型网络。得1分。

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

学生答案正确,TTLmin=16。理由:AS3内通信不超过15个路由器,TTL初始值至少为路径路由器数+1,即16。得1分。

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

学生答案部分正确。学生指出到210.2.4.0/24需要60s,这与标准答案一致。但学生同时提到了“到210.2.3.0/24需30s”,此信息与本题所问的210.2.4.0/24无关,属于冗余信息,且未对核心答案造成干扰。根据禁止扣分原则,不因此扣分。核心答案正确,得2分。

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

学生答案部分正确。
第一问:学生答“外部通告”,正确对应了eBGP会话,得1分。
第二问:学生答“update报文”,正确,得1分。
第三问:学生答“R13走BGP(iBGP)通告R14与R15”,正确指出了iBGP会话,得1分。
本题共得3分。

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

学生未作答。本题得0分。

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

点击此处查看本题答案

继续练习 练习历史