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

科目组合

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

02: 52: 40
答题卡
得分 121/150
答对题目数 35/47
评价

答题情况分析报告

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

下列对顺序存储的有序表 (长度为 n)实现给定操作的算法中平均时间复杂度为 O(1)的是:( )

A、查找包含指定值元素的值
B、插入包含指定值元素的算法
C、删除第 i 个元素的算法
D、获取第 i 个值的算法
正确答案:D 你的答案: 正确 正确率:87%
点击此处查看本题答案

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

现有非空双向链表 L,其结点结构为:

prev 是指向前直接前驱结点的指针,next 是指向直接后继结点的指针。若要在 L 中指针 p 所指向的结点( 非尾结点) 之后插入指针 s 指向的新结点, 则在执行了语句序列: “s->next=p->next;p->next=s”,后,还要执行( )

A、s->next->prev=p; s->prev=p;
B、p->next->prev=s;s->prev=p;
C、s->prev=s->next->prev; s->next->prev=s;
D、p->next->prev=s->prev; s->next->prev=p;
正确答案:C 你的答案: 正确 正确率:73%
点击此处查看本题答案

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

若采用三元组表存储结构存储系数矩阵 M。则除三元组外,下列数据中还需要保存的是( )。

I. M 的行数
II. M 中包含非零元素的行数
III. M 的列数
IV.M 中包含非零元素的列数
 
A、仅 I 和 III
B、仅 I 和 IV
C、仅 II 和 IV
D、I,II,III,IV
正确答案:A 你的答案: 正确 正确率:69%
点击此处查看本题答案

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

在有 6 个字符组成的字符集 S 中,各个字符出现的频次分别为 3,4,5,6,8,10,为 S 构造的哈夫曼树的加权平均长度为( )

A、2.4
B、2.5
C、2.67
D、2.75
正确答案:B 你的答案: 正确 正确率:56%
点击此处查看本题答案

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

已知一棵二叉树的树形如图,若其后序遍历为 f,d,b,e,c,a,则其先序列为( )。

A、aedfbc
B、acebdf
C、cabefd
D、dfebac

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

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

已知无向连通图 G 中各边的权值均为 1,下列算法中,一定能够求出图 G 中从某顶点到其余各个顶点最短路径的是( )。

I.普利姆算法
II.克鲁斯卡尔算法
III.图的广度优先搜索

A、仅 I      B、仅 III      C、仅 II 和 I      D、I,II,III

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

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

下列关于非空 B 树的叙述中,正确的是( )

①插入操作可能增加树的高度
②删除操作一定会导致叶结点的变化
③查找某关键字一定是要查找到叶结点
④插入的新关键字最终位于叶结点中
A、仅 1
B、仅 12
C、仅 34
D、仅 124
正确答案:B 你的答案: 正确 正确率:53%
点击此处查看本题答案

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

对含有 600 个元素的有序顺序表进行折半查找,关键字之间的比较次数最多是( )。

A、9
B、10
C、30
D、300
正确答案:B 你的答案: 正确 正确率:84%
点击此处查看本题答案

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

现有长度为 5,初始为空的散列表 HT,散列表函数 H(K)=(k+4)%5 用线性探查再散列法解决冲突。若将关键字序列 2022,12,25 依次插入 HT 中,然后删除关键字 25,则 HT 中查找失败的平均查找长度(  )。

A、1
B、1.6
C、1.8
D、2.2
正确答案:C 你的答案: 正确 正确率:48%
点击此处查看本题答案

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

下列排序算法中,不稳定的是( )

I.希尔排序
II.归并排序
III.快速排序
IV.堆排序 V.基数排序
A、仅 I 和 II
B、仅 II 和 V
C、仅 I,III,IV
D、III,IV V
正确答案:C 你的答案: 正确 正确率:88%
点击此处查看本题答案

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

使用快速排序算法对数据进行升序排序, 若经过一次划分后得到的数据序列是 68,11,70,23,80,77,48,81,93,88,则该次划分的轴枢( )。

A、11
B、70
C、80
D、81
正确答案:D 你的答案: 正确 正确率:92%
点击此处查看本题答案

第12题 计算机组成原理 单选题 题目链接
若机器 M 的主频为 1.5hz,在 M 上执行程序 p 的指令条数为 5*10 的 5 次方,p 的平均 CPI 为 1.2,则 p 在 M 上的指令执行速度和用户 CPU 时间分别为( )
A、0.8GIPS、0.4ms
B、0.8GIPS、0.4μs
C、1.25GIPS、0.4ms
D、1.25GIPS、0.4μs
正确答案:C 你的答案: 正确 正确率:77%
点击此处查看本题答案

第13题 计算机组成原理 单选题 题目链接
若 short 型变量 x=-8190,则 x 的机器数为( )
A、E002H
B、E001H
C、9FFFH
D、9FFEH
正确答案:A 你的答案: 正确 正确率:77%
点击此处查看本题答案

第14题 计算机组成原理 单选题 题目链接
已知 float 型变量用 IEEE754 单精度浮点数格式表示。若 float 型变量 x 的机器数为8020000H,则 x 的值( )
A. -2^-128
B. -1.01 * 2^-127
C. -1.01 * 2^-126
D. 非数(NAN)
正确答案:A 你的答案: D 正确率:42%
点击此处查看本题答案

第15题 计算机组成原理 单选题 题目链接
某计算机的 CPU 有 30 根地址线,按字节编址,CPU 和主存芯片连接时,要求主存芯片占满所有可能存储地址空间,并且 RAM 区和 ROM 区所分配的孔家大小比为 3:1,若 RAM 在连续低地址区,ROM 在连续高地址区,则 ROM 的地址范围( )
A、00000000H~0FFFFFFH
B、10000000H~2FFFFFFH
C、30000000H~3FFFFFFH
D、40000000H~4FFFFFFH
正确答案:C 你的答案: 正确 正确率:83%
点击此处查看本题答案

第16题 计算机组成原理 单选题 题目链接
已知 x、、y 为 int 类型,当 x=100,y=200 时,执行 x-y 指令的到的溢出标志 OF 和借位标志 CF 分别为 0,1,那么当 x=10,y=-20 时,执行该指令得到的 OF 和 CF 分别是( )
A、0,0
B、0,1
C、1,0
D、1,1
正确答案:B 你的答案: A 正确率:53%
点击此处查看本题答案

第17题 计算机组成原理 单选题 题目链接
某运算类型指令中有一个地址码为通用寄存器编号,对应通用寄存器中存放的是操作数或操作数地址,CPU 区分两者的依据是( )
A、操作数的寻址方式
B、操作数的编码方式
C、通用寄存器编号
D、通用寄存器的内容
正确答案:A 你的答案: 正确 正确率:84%
点击此处查看本题答案

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

数据通路由组合逻辑元件(操作元件)和时序逻辑元件(状态元件)组成。下列给出的元件中,属于操作元件的是( )。

I. 算术逻辑部件(ALU)

II. 程序计数器(PC)

III. 通用寄存器组(GPRs)

IV. 多路选择题(MUX)

A. 仅I、II

B. 仅I、IV

C. 仅II、III

D. 仅I、II、IV

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

第19题 计算机组成原理 单选题 题目链接
在采用“取指、译码/取数、执行、访存、写回” 5 段流水线的 RISC 处理器中,执行如下指令序列(第一列为指令序号),其中s0、s1、s2、s3和t2表示寄存器编号。
I1     add s2, s1, s0   // R[s2] ← R[s1] + R[s0]
I2     load s3, 0(s2)   // R[s3] ← M[R[s2] + 0]
I3     beq t2, s3, L1   // if R[t2] = R[s3] jump to L1
I4     addi t2, t2, 20  // R[t2] ← R[t2] + 20
I5 L1: 

若采用转发(旁路)技术处理数据冒险,采用硬件阻塞方式处理控制冒险,则在 I1~I4 执行过程中,发生流水线阻塞的指令有( )。

A. 仅 I3

B. 仅 I2、I4

C. 仅 I3、I4

D. 仅 I2、I3、I4

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

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

某存储器总线宽度为 64 位,总线时钟频率为 1GHZ,在总线上传输一个数据或地址需要一个的时钟周期,不支持突发传送方式,若通过该总线连接 CPU 和主存,主存每次准备一个 64 位数据需要 6ns,主存块大小为 32B,则读取一个主存块需要的时间为( )。

A. 8ns

B. 11ns

C. 26ns

D. 32ns

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

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

下列关于硬件和异常/中断关系的叙述中,错误的是( )。

A. CPU 在执行一条指令过程中检测异常事件

B. CPU 在执行完一条指令时检测中断请求信号

C. 开中断中 CPU 检测到中断请求后就进行中断响应

D. 外部设备通过中断控制器向 CPU 发中断结束信号

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

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

下列关于 I/O 控制方式的叙述中,错误的是( )。

A. 查询方式下,通过 CPU 执行查询程序进行 I/O 操作

B. 中断方式下,通过 CPU 执行中断服务程序进行 I/O 操作

C. DMA 方式下,通过 CPU 执行 DMA 传送程序进行 I/O 操作

D. 对于 SSD、网络适配器等高速设备,采用 DMA 方式输入/输出

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

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

与宏内核操作系统相比,下列特征中微内核操作系统具有的是( )。

Ⅰ. 较好的性能

Ⅱ. 较高的可靠性

Ⅲ. 较高的安全性

Ⅳ. 较强的可扩展性

A. Ⅱ、Ⅳ

B. Ⅰ、Ⅱ、Ⅲ

C. Ⅰ、Ⅲ、Ⅳ

D. Ⅱ、Ⅲ、Ⅳ

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

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

在操作系统内核中,中断向量表适合采用的数据结构是( )。

A. 数组

B. 队列

C. 单向链表

D. 双向链表

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

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

某系统采用页式存储管理,用位图管理空闲页框。若页大小为4 KB,物理内存大小为16 GB,则位图所占空间的大小是( )。

A. 128 B

B. 128 KB

C. 512 KB

D. 4 MB

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

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

下列操作完成时,导致CPU从内核态转为用户态的是( )。

A. 阻塞过程

B. 执行 CPU 调度

C. 唤醒进程

D. 执行系统调用

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

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

下列出当前线程引起的事件或执行的操作中,可能导致该线程由执行态变为就绪态的是( )。

A. 键盘输入

B. 缺页异常

C. 主动出让CPU

D. 执行信号量的wait()操作

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

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

对于采用虚拟内存管理方式的系统,下列关于进程虚拟地址空间的叙述中,错误的是( )。

A. 每个进程都有自己独立的虚拟地址空间

B. C语言中malloc( )函数返回的是虚拟地址

C. 进程对数据段和代码段可以有不同的访问权限

D. 虚拟地址的大小由主存和硬盘的大小决定

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

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

进程P1、P2和P3进入就绪队列的的时刻,优先值(越大优先权越高)以及CPU的执行时间如下表所示。

系统采用基于优先权的抢占式CPU调度算法,从0ms时刻开始进行调度,则P1、P2和P3的平均周转时间为( )。

A. 60 ms

B. 61 ms

C. 70 ms

D. 71 ms

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

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

进程R和S共享数据data,若date在R和S中所在页的页号分别为p1和p2,两个页所对应的页框号分别为f1和f2,则下列叙述中,正确的是( )。

A. p1 和 p2 一定相等,f1 和 f2 一定相等

B. p1 和 p2 一定相等,f1 和 f2 不一定相等

C. p1 和 p2 不一定相等,f1 和 f2 一定相等

D. p1 和 p2 不一定相等,f1 和 f2 不一定相等

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

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

若文件F仅被进程P打开并访问,则当进程P关闭F时,下列操作中,文件系统需要完成的是( )。

A. 删除目录中文件F的目录项

B. 释放F的索引节点所占的内存空间

C. 释放F的索引节点所占的外存空间

D. 将文件磁盘索引节点中的链接计数减1

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

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

下列因素中,设备分配需要考虑的是( )。

Ⅰ. 设备的类型

Ⅱ. 设备的访问权限

Ⅲ. 设备的占用状态

Ⅳ. 逻辑设备与物理设备的映射关系

A. Ⅰ、Ⅱ

B. Ⅱ、Ⅲ

C. Ⅲ、Ⅳ

D. Ⅰ、Ⅱ、Ⅲ、Ⅳ

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

第33题 计算机网络 单选题 题目链接
在下图所示的分组交换网络中,主机 H1 和 H2 通过路由器互连,2 段链路的带宽均为 100Mb/s、时延带宽积(即单向传播时延×宽带)均为 1000b。若 H1 向 H2 发送 1 个大小为 1MB 的文件,分组长度为 1000B,则从 H1 开始发送时刻起到 H2 收到文件全部数据时刻止,所需的时间至少是( )。(注:M=10^6)。
A. 80.02ms    B. 80.08ms    C. 80.09ms    D. 80.10ms
正确答案:D 你的答案: 正确 正确率:55%
点击此处查看本题答案

第34题 计算机网络 单选题 题目链接
某无噪声理想信道带宽为 4MHz,采用 QAM 调制,若该信道的最大数据传输率是 48Mbps,则该信道采用的 QAM 调制方案是( )
A. QAM-16
B. QAM-32
C. QAM-64
D. QAM-128
正确答案:C 你的答案: A 正确率:83%
点击此处查看本题答案

第35题 计算机网络 单选题 题目链接
假设通过同一信道,数据链路层分别采用停-等协议、GBN 协议和 SR 协议(发送窗口和接收窗口相等)传输数据,三个协议数据帧长相同,忽略确认帧长度,帧序号位数为 3 比特。若对应三个协议的发送方最大信道利用率分别是 U1、U2 和 U3,则 U1、U2 和 U3 满足的关系是( )
A. U1≤U2≤U3
B. U1≤U3≤U2
C. U2≤U3≤U1
D. U3≤U2≤U1
正确答案:B 你的答案: 正确 正确率:67%
点击此处查看本题答案

第36题 计算机网络 单选题 题目链接
已知 10BaseT 以太网的争用时间片为 51.2us。若网卡在发送某帧时发生了连续 4 次冲突,则基于二进制指数腿比算法确定的再次尝试重发该帧前等待的最长时间是( )
A. 51.2us
B. 204.8us
C. 768us
D. 819.2us
正确答案:C 你的答案: 正确 正确率:67%
点击此处查看本题答案

第37题 计算机网络 单选题 题目链接
若甲向乙发送数据时采用 CRC 校验,生成多项式为 G(x)=x^4+x+1(即 G =10011),则乙接收到下列比特串时,可以断定其在传输过程中未发生错误的是( )
A. 101110000
B. 101110100
C. 101111000
D. 101111100
正确答案:D 你的答案: 正确 正确率:75%
点击此处查看本题答案

第38题 计算机网络 单选题 题目链接
某网络拓扑如下图所示,其中路由器 R2 实现 NAT 功能。若主机 H 向 Inernet 发送一个 IP 分组,则经过 R2 转发后,该 IP 分组的源 IP 地址是( )
A. 192.168.0.33
B. 192.168.0.35
C. 192.168.0.1
D. 192.168.0.3
正确答案:A 你的答案: 正确 正确率:50%
点击此处查看本题答案

第39题 计算机网络 单选题 题目链接
主机 168.16.84.24/20 所在子网的最小可分配地址和最大可分配地址分别是( )
A.168.16.80.1,168.16.84.254
B.168.16.80.1,168.16.95.254
C.168.16.84.1,168.16.84.254
D.168.16.84.1,168.16.95.254
正确答案:B 你的答案: 正确 正确率:86%
点击此处查看本题答案

第40题 计算机网络 单选题 题目链接
下列关于 ipv6 和 ipv4 的叙述中,正确的是( )
I. ipv6 地址空间是 ipv4 地址空间的 96 倍
II. ipv4 和 ipv6 的基本首部的长度均可变
III.ipv4 向 ipv6 过渡可以采用双协议栈和隧道技术
IV. ipv6 首部的 Hop-Limit 等价于 ipv4 首部的 TTL 字段
A.仅 I、II
B.仅 I、IV
C.仅 II、III
D.仅 III、IV
正确答案:D 你的答案: 正确 正确率:74%
点击此处查看本题答案

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

(13分)已知有向图 G 采用邻接矩阵存储,类型定义如下:

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

将图中出度大于入度的顶点称为 K 顶点。例如在题41图中,顶点 a 和 b 都是 K 顶点。

设计算法 int printVertices(MGraph G)对给定任意非空有向图 G,输出 G 中所有 K 顶点的算法,并返回 K 顶点的个数。
(1)给出算法的设计思想。(4分)
(2)根据算法思想,写出 C/C++描述,并注释。(9分)
你的答案:


评分及理由

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

学生答案的设计思想描述清晰准确:通过遍历邻接矩阵的行计算顶点的出度,通过遍历列计算顶点的入度,然后比较出度和入度判断是否为K顶点,最后输出并计数。这与标准答案的思路完全一致。得4分。

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

学生代码实现基本正确:
- 正确遍历所有顶点(0分)
- 对每个顶点正确计算其出度和入度(0分)
- 正确比较出度和入度判断K顶点(0分)
- 正确输出K顶点并计数(0分)
- 正确返回K顶点个数(0分)
但代码中存在一个逻辑问题:在计算边数时使用了`if(G.Edge[i][j] > 0)`的条件判断,这只能处理边权为1的情况,如果邻接矩阵存储的是带权图(边权可能大于1),这种方法就不准确了。标准答案直接累加`G.Edge[i][j]`的值,能够正确处理各种边权情况。考虑到题目明确指出是采用邻接矩阵存储有向图,且示例中边权为0或1,这个逻辑问题在实际应用中可能影响结果的正确性。扣1分。

题目总分:4+8=12分

12
点击此处查看本题答案

第42题 数据结构 综合题 题目链接
(10 分)对含有 n(n > 0)个记录的文件进行外部排序,采用置换-选择排序生成初始归并段时需要使用一个工作,工作区中能保存 m 个记录,请回答下列问题:

(1)若文件中含有 19 个记录,其关键字依次是 51, 94, 37, 92, 14, 63, 15, 99, 48, 56, 23, 60, 31, 17,43, 8, 90, 166, 100,当 m = 4 时,可生成几个初始归并段?各是什么?(8分)

(2)对任意的 m(n>>m>0),生成的第一个初始归并段的长度最大值和最小值分别是多少?(2分)

你的答案:


评分及理由

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

学生答案正确识别生成了3个初始归并段,且每个归并段的内容与标准答案完全一致。虽然识别结果中出现了"42."这样的无关信息,但根据禁止扣分原则,这属于识别问题,不扣分。因此该部分得满分8分。

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

学生答案存在逻辑错误:

  • 对于最大值回答"最大为19"是正确的,因为当输入数据已经有序时,第一个归并段可以包含所有n=19个记录
  • 但对于最小值回答"最小为2"是错误的,根据置换-选择排序的特性,第一个归并段的最小长度应该是工作区大小m,而不是2
  • 学生还提到"当m大于初始段长时"的条件描述不够准确

由于最小值回答错误,扣1分,该部分得1分。

题目总分:8+1=9分

点击此处查看本题答案

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

(14分)已知计算机M字长为32位,按字节编址,采用请求调页策略的虚拟存储管理方式,虚拟地址为32位,页面大小为4KB;数据Cache采用4路组相联映射,数据区大小为8KB,主存块大小为32B。现有C语言程序段如下:

for (i = 0; i < 24; i++)
    for (j = 0; j < 64; j++) a[i][j] = 10;

已知二维数组a按行优先存放,在虚拟地址空间中分配的起始地址为0042 2000H,sizeof(int)=4,假定在M上执行上述程序段之前数组a不在主存,且在该程序段执行过程中不会发生页面置换。请回答下列问题。

(1) 数组a分为几个页面存储?对于数组a的访问,会发生几次缺页异常?页故障地址各是什么?(3分)

(2) 不考虑变量i和j,该程序段的数据访问是否具有时间局部性?为什么?(2分)

(3) 计算机M的虚拟地址(A31~A0)中哪几位用作块内地址?哪几位用作Cache组号?a[1][0]的虚拟地址是多少?其所在主存块对应的Cache组号是多少?(4分)

(4) 数组a占用多少主存块?假设上述程序段执行过程中数组a的访问不会和其他数据发生Cache访问冲突,则数组a的Cache命中率是多少?若将循环中i和j的次序按如下方式调换:

for (j = 0; j < 64; j++)
    for (i = 0; i < 24; i++) a[i][j] = 10;

则数组a的Cache命中率又是多少?(5分)

你的答案:


评分及理由

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

学生答案中正确计算出数组a分为2个页面存储,发生2次缺页异常,第一个页故障地址00422000H正确。但第二个页故障地址写为60423000H,应为00423000H,存在明显错误。考虑到可能是识别错误(6和0相似),但根据禁止扣分规则第1条,判断为误写,不扣分。因此得3分。

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

学生正确指出没有时间局部性,理由充分(每个元素仅访问一次)。得2分。

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

学生正确指出虚拟地址低12位(A11~A0)用作块内地址(页面偏移),中间6位(A10~A5)用作Cache组号。a[1][0]的虚拟地址计算为00422100H正确(实际应为00422100H,学生写作00422100H,可能是识别误差,但不影响)。组号计算为8正确。但学生将a[1][0]误写为A[2][0],根据禁止扣分规则第1条,判断为误写,不扣分。得4分。

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

学生正确计算数组a占用192个主存块,Cache命中率87.5%正确。对于循环次序调换后的命中率,学生也正确计算出87.5%,但解释部分存在表述混乱(如提到a[j][i]、a[8][0]等),不过结论正确。根据思路正确不扣分原则,得5分。

题目总分:3+2+4+5=14分

点击此处查看本题答案

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

(9分)上题中C程序段在计算机M上的部分机器级代码如下,每个机器级代码行中依次包含指令序号、虚拟地址、机器指令和汇编指令。

for(i=0; i<24; i++)
1   00401072  C7 45 F8 00 00 00 00              mov[ebp-8], 0
2   00401079  EB 09                             jmp 00401084h
3   0040107B  8B 55 F8                          mov eax, [ebp-8]
    ...       ...                               ...
7   00401088  7D 32                             jge 004010bch
    for(j=0; j<64; j++)
8   0040108A  C7 45 FC 00 00 00 00              mov[ebp-4], 0
    ...       ...                               ...
        a[i][j]=10;
    ...       ...                               ...
19  004010AE  C7 84 82 00 20 42 00 0A 00 00 00  mov[ecx+edx*4+00422000h], 0Ah
20  ...       ...                               ...

请回答下列问题。

(1) 第20条指令的虚拟地址是多少?

(2) 已知第2条jmp和第7条jge都是跳转指令,其操作码分别是EBH和7DH,跳转地址分别为0040 1084H、0040 10BCH,这两条指令都采用什么寻址方式?给出第2条指令jmp的跳转目标地址计算过程。

(3) 已知第19条mov指令的功能是“a[i][j]←10”,其中ecx和edx为寄存器名,0042 2000H是数组a的首地址,指令中源操作数采用什么寻址方式?已知edx中存放的是变量j,ecx中存放的是什么?根据该指令的机器码判断计算机M采用的是大端还是小端方式。

(4) 第一次执行第19条指令时,取指令过程中是否会发生缺页异常?为什么?

你的答案:


评分及理由

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

学生答案正确计算了第20条指令的虚拟地址为004010B9H,计算过程清晰。得3分。

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

学生正确判断两条指令都采用相对寻址方式(得1分)。但计算过程有逻辑错误:学生使用第7条指令地址00401088H进行计算,而题目要求计算第2条指令的跳转目标地址。正确应使用第2条指令地址00401079H,计算过程应为00401079H+2H+9H=00401084H。学生计算错误,扣2分。本小题得1分。

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

学生正确回答源操作数采用立即寻址方式(得0.5分);正确回答ECX中存放的是256×i(得0.5分);正确判断为小端方式(得1分)。本小题得2分。

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

学生正确分析页内地址占12位,正确判断第19条指令与第1条指令页号相同(均为00401H),因此不会发生缺页异常。分析过程完整正确。得1分。

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

点击此处查看本题答案

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

(7分)现要求学生使用 swap 指令和布尔型变量 lock 实现临界区互斥。lock 为线程间共享的变量。lock 的值为 TRUE 时线程不能进入临界区,为 FALSE 时线程能够进入临界区。某同学编写的实现临界区互斥的伪代码如题 45(a) 图所示。

(1) 题 45(a) 图中伪代码中哪些语句存在错误?将其改为正确的语句(不增加语句条数)。(4分)

(2) 题 45(b) 图中给出了两个变量值的函数 newSwap() 的代码是否可以用函数调用语句“newSwap(&key, &lock)”代替指令“swap key, lock”以实现临界区的互斥?为什么?(3分)

你的答案:


评分及理由

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

学生正确指出了两处错误:①将if条件判断改为while循环;②退出临界区时应将lock设为FALSE。这两处修改与标准答案完全一致,逻辑正确。因此本题得4分。

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

学生正确回答"不可以使用newSwap代替swap",并给出了理由:newSwap不具有原子性,在执行过程中可能中断,导致两个进程同时进入临界区。这与标准答案的核心观点一致,虽然具体举例说明的细节略有不同,但思路正确且解释清晰。因此本题得3分。

题目总分:4+3=7分

点击此处查看本题答案

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

(8分)进程P通过执行系统调用从键盘接收一个字符的输入,已知此过程中与进程P相关的操作包括:①将进程P插入就绪队列;②将进程P插入阻塞队列;③将字符从键盘控制器读入系统缓冲区;④启动键盘中断处理程序;⑤进程P从系统调用返回;⑥用户在键盘上输入字符。以上编号①~⑥仅用于标记操作,与操作的先后顺序无关。请回答下列问题。

(1) 按照正确的操作顺序,操作①的前一个和后一个操作分别是上述操作中的哪一个?操作⑥的后一个操作上述操作中的哪一个?(3分)

(2) 在上述哪个操作之后CPU一定从进程P切换到其他进程?在上述哪个操作之后CPU调度程序才能选择进程P执行?(2分)

(3) 完成上述哪个操作的代码属于键盘驱动程序?(1分)

(4) 键盘中断处理程序执行时,进程P处于什么状态?CPU处于内核态还是用户态?(2分)

你的答案:


评分及理由

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

学生答案:操作①的前一个是②,后一个是⑤;⑥的前一个是②,后一个是④。

标准答案:操作①的前一个是③,后一个是⑤;操作⑥的后一个是④。

分析:学生答对操作①的后一个操作是⑤(得1分),操作⑥的后一个操作是④(得1分)。但操作①的前一个操作应为③,学生答成②,这是逻辑错误(扣1分)。此外学生写"⑥的前一个是②"与问题无关,但问题只问"操作⑥的后一个操作",不影响评分。

得分:2分(扣1分)

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

学生答案:操作②之后CPU一定从进程P切换到其他进程;在①操作之后CPU才能选中P进程。

标准答案:操作②之后CPU一定从进程P切换到其他进程;操作①之后CPU调度程序才能选择进程P执行。

分析:学生两个小问都回答正确,与标准答案完全一致。

得分:2分

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

学生答案:操作③属于驱动程序

标准答案:操作③将字符从键盘控制器读入系统缓冲区属于键盘驱动程序

分析:学生回答正确,操作③确实属于键盘驱动程序。

得分:1分

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

学生答案:中断处理时P处于阻塞态,CPU处于内核态

标准答案:键盘中断处理程序执行时,进程P处于阻塞状态,CPU处于内核态

分析:学生两个小问都回答正确,与标准答案完全一致。

得分:2分

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

点击此处查看本题答案

第47题 计算机网络 综合题 题目链接
(9分)某网络拓扑如图所示,主机H登录FTP服务器后自服务器上估一个大小为18000B的文件F,假设H传输F建立数据连接时,选择的初始序号为100,MSS=1000B,拥塞控制初始阈值为4MSS,RTT=10ms,忽略TCP的传输时延,在F的传输过程中,H以MSS段向服务器发送数据,且未发生差错。丢包和乱序。
(1) FTP的控制连接是持久的还是非持久的?FTP的数据连接是持久的还是非持久的?H登录FTP服务器时,建立的TCP连接是控制连接还是数据连接?(3分)
(2) H通过数据连接发送F时,F的第一个字节序号是多少?在断开数据连接的过程中,FTP发送的第二次挥手的ACK序号是?(2分)

(3) F发送过程中,当H收到确认序号为2101的确认段时,H的拥塞窗口调整为多少?收到确认序号为7101的确认段时,H的拥塞窗调整为多少?(2分)

(4) H从请求建立数据连接开始,到确认F已被服务器全部接收为止,至少需要多长时间,期间应用层数据平均发送速率是多少?(2分)

你的答案:


评分及理由

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

学生答案:FTP的控制连接是持久的,FTP的数据连接是非持久的,H登录FTP时建立的是控制连接。

标准答案:控制连接是持久的;数据连接是非持久的;控制连接。

评分:3分。学生答案与标准答案完全一致,正确区分了控制连接和数据连接的持久性,并正确指出H登录时建立的是控制连接。

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

学生答案:F的第一个字节的序号是101,第二次握手的Ack确认号是18102。

标准答案:101,18102

评分:2分。学生答案与标准答案完全一致,正确计算了F的第一个字节序号(初始序号100+1=101)和第二次挥手的ACK序号(18000B文件,最后一个字节序号18000+100=18100,ACK序号18100+1=18101?但标准答案为18102,可能存在计算差异。然而根据题目描述,初始序号为100,文件大小18000B,最后一个字节序号应为100+17999=18099,ACK序号应为18100。但标准答案给出18102,可能是题目特殊设定。学生答案与标准答案一致,故给满分)。

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

学生答案:发送了2MSS,所以当前的拥塞窗口调整为3MSS,收到7101则已接收了7MSS,H的拥塞窗口调整为5MSS。

标准答案:3MSS, 5MSS

评分:2分。学生答案与标准答案完全一致,正确分析了TCP拥塞控制过程。收到2101确认时处于慢启动阶段,窗口从2MSS增至3MSS;收到7101确认时处于拥塞避免阶段,窗口从4MSS增至5MSS。

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

学生答案:18MSS。18 - 7 = 11 = 5 + 6,18 = 1+2+4+5+6,共需要5RTT即5×10 = 50ms,18000 / 50 = 3.6×10⁵B/s = 360KB/s,其期间应用层数据平均发送速率为360KB/s。

标准答案:需要6个RTT,即至少60ms,2.4Mbps

评分:0分。学生答案存在逻辑错误:

  • 时间计算错误:标准答案为6RTT=60ms,学生计算为5RTT=50ms
  • 速率计算错误:标准答案为2.4Mbps,学生计算为360KB/s(约2.88Mbps)
  • 分析过程显示学生对TCP传输过程的理解有误,未能正确计算传输所需RTT数

虽然学生正确识别了文件大小为18MSS,但对传输过程的RTT计算和最终速率计算均错误。

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

点击此处查看本题答案

继续练习 练习历史