科目组合
计算机: 数据结构 、计算机组成原理 、操作系统 、计算机网络
(1)
遍历邻接矩阵,通过数组count[MAXV]统计每个节点的度数,count[i]表示顶点i的度数,若count[i]中度为奇数的顶点个数为0或2时,则存在EL路径。
(2)
int IsExistEL(MGraph G)
{
int n = G.numVertices;
vector<int>count(n, 0);
for(int i = 0; i < n; i++) {
for (int j = i + 1; j < n; j++) {
if (G.Edge[i][j]) {
count[i]++;
count[j]++;
}
}
}
int cnt = 0;
for(int i = 0; i < n; i++) {
if (count[i] & 1)
cnt++;
}
return (cnt == 0 || cnt == 2) ? 1 : 0;
}
(3)
时间复杂度为O(numVertices^2),空间复杂度为O(1)
评分及理由
(1)得分及理由(满分4分)
得分:4分
理由:学生的设计思想与标准答案一致,都包含三个步骤:统计度数、统计奇度顶点数、检查奇度顶点个数是否为0或2。思路正确完整,没有逻辑错误。
(2)得分及理由(满分9分)
得分:7分
理由:
(3)得分及理由(满分2分)
得分:1分
理由:
题目总分:4+7+1=12分
(1)
{5, 0, 4, 1, 2, 3}
(2)
n * (n-1) / 2
(3)
不是稳定的
将if(a[i] < a[j])改为if(a[i] <= a[j])
评分及理由
(1)得分及理由(满分2分)
学生给出的答案是count数组的内容{5, 0, 4, 1, 2, 3},而不是题目要求的b数组内容。题目明确要求回答调用函数后数组b中的内容,学生没有正确理解题目要求,也没有进行后续的映射计算。因此本题得0分。
(2)得分及理由(满分2分)
学生正确给出了比较次数的计算公式n*(n-1)/2,这与标准答案完全一致。虽然表达形式略有不同(标准答案写的是n(n-1)/2),但数学意义相同。因此本题得2分。
(3)得分及理由(满分4分)
学生正确判断该算法不稳定,并给出了正确的修改方案:将if(a[i] < a[j])改为if(a[i] <= a[j])。这与标准答案的解决方案完全一致。虽然学生没有详细阐述理由,但核心判断和修改方案都正确。因此本题得4分。
题目总分:0+2+4=6分
(1)
16位
1M字节
MAR 20位
MDR 8位
(2)
16种操作
63种操作
4个
(3)
01B2H = 000000 01 10 11 0010,表示将寄存器1和寄存器2的内容进行带符号整数减法,将结果送入寄存器3
B04AH,不溢出
D23E,溢出
(4)
符号拓展
(5)
J型指令
评分及理由
(1)得分及理由(满分3分)
学生回答:ALU宽度16位(正确)、主存空间1MB(正确)、MAR 20位(正确)、MDR 8位(正确)。但未回答指令寄存器位数(16位),扣1分。得2分。
(2)得分及理由(满分3分)
学生回答:R型最多16种操作(正确)、I型和J型总共63种操作(正确)、通用寄存器最多4个(正确)。全部正确,得3分。
(3)得分及理由(满分5分)
学生回答:指令01B2H功能描述正确(得1分);执行后R[3]=B04AH(正确,得1分);不溢出判断正确(得1分)。指令01B3H执行后R[3]错误(应为溢出结果,学生答D23E无依据),扣1分;溢出判断正确(得1分)。共得4分。
(4)得分及理由(满分2分)
学生回答"符号拓展"正确(得2分)。
(5)得分及理由(满分2分)
学生回答"J型指令"正确(得2分)。
题目总分:2+3+4+2+2=13分
(1)
高18位
低12位
(2)
高9位是标记
中间3位是组号
(3)
虚页号转为二进制为:
01010
01100
10000
00111
11010
00100
01100
10100
对应的组号位2、4、0、7、2、4、4、4
TLB采用2路组相联,因此虚页号为12和4对应的TLB被替换。
(4)
2位
评分及理由
(1)得分及理由(满分2分)
学生回答“高18位”表示虚页号,“低12位”表示页内地址,与标准答案一致。得2分。
(2)得分及理由(满分2分)
学生回答“高9位是标记,中间3位是组号”,但根据标准答案,虚页号共18位,TLB组号占低3位,标记应占高15位。学生错误地将标记位计算为9位,存在逻辑错误。扣1分,得1分。
(3)得分及理由(满分2分)
学生正确计算了各虚页号对应的组号(2、4、0、7、2、4、4、4),并指出组4中虚页号12和4可能被替换。但学生未具体分析LRU替换过程,且错误地认为“12和4对应的TLB被替换”,而标准答案为仅虚页号4在访问虚页号20时被替换。学生未完整说明替换过程和理由,存在逻辑错误。扣1分,得1分。
(4)得分及理由(满分2分)
学生回答“2位”,与标准答案一致(虚页号增加2位,TLB表项位数相应增加2位)。得2分。
题目总分:2+1+1+2=6分
(1)
S = S - 1和S = S + 1在执行过程中可能会发生调度,此时增减操作并未完成,其他操作读取的S值为未完成操作的结果。
(2)
方法一错误,进入关中断后进行while,之后的signal都不能进入中断执行S = S + 1
方法二错误,进入关中断后进行while,之后的signal都不能进入中断执行S = S + 1
(3)
能,将临界区用开关中断进行保护,将while(S<=0)放在关中断之前
评分及理由
(1)得分及理由(满分2分)
学生回答指出了S=S-1和S=S+1操作在执行过程中可能被调度打断,导致其他进程读取到不完整的S值,这基本正确描述了互斥的必要性。但回答未明确强调信号量S是共享变量,以及多个进程并发访问会导致竞态条件。根据标准答案,回答基本正确但不够完整,扣0.5分。
得分:1.5分
(2)得分及理由(满分3分)
学生正确指出方法1错误,理由正确(关中断后while循环无法被其他进程修改S,导致死循环)。但学生错误地认为方法2也是错误的,理由与方法1相同,这忽略了方法2在while循环内交替开关中断的改进,允许其他进程执行signal操作。因此,方法2的判断和理由错误,扣2分(方法2判断错误扣1.5分,理由错误扣0.5分)。方法1部分得1分。
得分:1分
(3)得分及理由(满分2分)
学生回答错误地认为用户程序可以使用开/关中断指令实现临界区互斥,并提出了修改方案(将while放在关中断前),但未认识到开/关中断是特权指令,用户程序无法直接使用。根据标准答案,回答完全错误。
得分:0分
题目总分:1.5+1+0=2.5分
(1)
ROM中的引导程序、磁盘引导程序、分区引导程序、操作系统的初始化程序
(2)
物理格式化、分区、逻辑格式化、操作系统的安装
(3)
扇区的划分:物理格式化
根目录的建立:逻辑格式化
评分及理由
(1)得分及理由(满分3分)
学生答案:ROM中的引导程序、磁盘引导程序、分区引导程序、操作系统的初始化程序
该答案与标准答案完全一致,正确描述了系统启动过程中各引导程序的执行顺序。因此得3分。
(2)得分及理由(满分3分)
学生答案:物理格式化、分区、逻辑格式化、操作系统的安装
该答案与标准答案完全一致,正确列出了制作启动盘时四个操作的执行顺序。因此得3分。
(3)得分及理由(满分2分)
学生答案:扇区的划分:物理格式化;根目录的建立:逻辑格式化
该答案与标准答案完全一致,正确指出了磁盘扇区划分在物理格式化中完成,文件系统根目录建立在逻辑格式化中完成。因此得2分。
题目总分:3+3+2=8分
(1)
DHCP协议
TCP协议、IP协议
(2)
<00-11-22-33-44-bb, 1>
<00-11-22-33-44-aa, 2>
<00-11-22-33-44-cc, 4>
(3)
1个
ARP帧
00-11-22-33-44-bb
评分及理由
(1)得分及理由(满分3分)
学生回答DHCP协议,但根据题目描述,H1需要通过域名访问Web服务器,因此需要先进行DNS解析,而不是DHCP(DHCP用于动态获取IP地址,但图中已给出H1的IP地址,说明已配置好)。因此应用层协议回答错误。封装协议部分只提到TCP和IP,缺少DNS使用的UDP协议以及数据链路层的封装。根据标准答案,正确应为DNS→UDP→IP→以太网帧。学生回答存在多处错误,扣分严重。得0分。
(2)得分及理由(满分3分)
学生列出的交换表内容与标准答案一致,包含三个正确的MAC地址与端口映射关系,且顺序不影响正确性。虽然学生可能未详细描述获取过程,但结果正确。得3分。
(3)得分及理由(满分3分)
学生回答接收到1个帧,但标准答案为2个(分别是查询本地域名服务器和查询路由器的ARP请求广播帧)。帧类型回答正确为ARP帧,但目的MAC地址回答错误(应为广播地址FF-FF-FF-FF-FF-FF,而非具体MAC地址)。因此数量回答错误扣分,目的MAC地址错误扣分。得1分(仅帧类型正确)。
题目总分:0+3+1=4分