科目组合
计算机: 数据结构 、计算机组成原理 、操作系统 、计算机网络
(1)遍历邻接矩阵,每列不为0的元素个数,即为相应顶点的入度,每找到一个入度为0的顶点,就将该点所在行不为0的元素全置为0。若每次都只能找到唯一一个入度为0的顶点,则判定G存在唯一的拓扑序列。
评分及理由
(1)得分及理由(满分4分)
该设计思想基本正确:首先计算每个顶点的入度(通过统计邻接矩阵每列非零元素),然后每次寻找入度为0的顶点,并将该顶点所在行的边“删除”(即置为0),若每一步只能找到一个入度为0的顶点,则拓扑序列唯一。核心思路与标准答案一致,即通过“每次仅有一个入度为0的顶点”来判断唯一性。但描述略显简略,未明确说明“删除”后需要更新相关顶点的入度(尽管隐含在“将该点所在行不为0的元素全置为0”中),也未明确处理图中存在环(无入度为0顶点)的情况,但在基本设计思想上主要考点已答出,因此给4分。
(2)得分及理由(满分9分)
学生未给出任何代码实现,根据题目要求“(2)根据设计思想,采用C或C++语言描述算法,关键之处给出注释”,本题缺失代码部分,因此该小题得0分。
题目总分:4+0=4分
*
评分及理由
(1)得分及理由(满分6分)
该学生的散列表构造存在多处错误。正确散列表应为:地址0-10对应关键字11、(空)、14、7、(空)、20、9、(空)、(空)、3、18。但学生填写为:地址0=11、1=7、2=14、3=(空)、4=(空)、5=9、6=(空)、7=(空)、8=3、9=(空)、17=18。具体错误包括:关键字7被错误放在地址1(正确应为地址3),关键字9被错误放在地址5(正确应为地址6),关键字3被错误放在地址8(正确应为地址9),关键字18被错误放在地址17(地址溢出,正确应为地址10),且多个地址与正确哈希值不符,说明二次探测过程计算有误。散列表结构错误直接导致表项不匹配,进而影响装填因子计算的准确性判断。装填因子计算为7/11,数字正确,但需基于正确的散列表结构,因结构错误,此部分不能给满分。
(2)得分及理由(满分2分)
查找关键字14的比较序列应为:首先探测地址H(14)=(14*3)%11=9,该位置存3,比较1次;再探测地址H1=(9+1²)%11=10,该位置存18,比较2次;再探测地址H2=(9+2²)%11=2,该位置存14,比较3次。因此正确序列为3、18、14。学生给出的序列为"3、18、14",与标准答案完全一致。虽然学生散列表结构有误,但查找过程是依据自己的表进行推导,且输出序列与标准逻辑结果相同,视为思路正确。
(3)得分及理由(满分2分)
查找关键字8时,正确的探测序列为:H(8)=(8*3)%11=2(存14),比较1次;H1=(2+1²)%11=3(存7),比较2次;H2=(2+2²)%11=6(存9),比较3次;H3=(2+3²)%11=0(存11),比较4次;H4=(2+4²)%11=7(空),找到空位,确认失败,散列地址为7。但学生在(2)中将自己的表格理解错误,其(3)给出答案为3,与正确地址7不符。关键错误在于学生未正确记住自己的探测过程,错误地将第三次探测地址H3=(2+9)%11=0的结果误写为3,且未继续探测到地址7,逻辑推导不完整。因此该问回答错误,不得分。
题目总分:6+2+0=8分

评分及理由
(1)得分及理由(满分2分)
第一问“32”回答正确,得1分;但第二问“因为计算机M字长为32位”理由不完整,标准答案强调“shamt需表示0~31共32种移位位数,2^5=32”,而学生只答了字长32位,未有效说明为何需要5位。但该理由与字长隐含的32位移位范围相关,可视为部分合理。综合给1.5分,但按严格标准,理由不充分扣0.5分,得1.5分。
(2)得分及理由(满分3分)
ALUBsrc答案“1”错误,标准答案为0,扣1分。F值“1FDB9753H”正确,得1分。OF=1、CF=1均正确,得1分。但“根据CF判断溢出”错误,标准答案应为“最高位进位与次高位进位异或判断”,且CF是进位标志,OF才是溢出标志,此处逻辑错误扣1分。本小题共得2分。
(3)得分及理由(满分2分)
学生回答“若为有符号数则符号扩展取1,无符号数则零扩展取0”,此说法不准确。标准答案核心是slli指令的高12位最高位为0,无论扩展方式结果等价,因此Ext可为0或1。学生未指出IR[31:20]最高位为0这一关键点,但思路方向(区分有符号/无符号)部分正确,可给1分。
(4)得分及理由(满分2分)
Ext=1正确,得1分;ALUctr=000正确(学生写“ALUStr”系识别误写,按误写处理),得1分。本小题共得2分。
(5)得分及理由(满分2分)
学生指出“最后7位为0000011,符合lw指定的操作码”,虽然标准答案也涉及操作码,但标准答案更强调高12位为A04H,与add/slli的高12位000H不同,从而唯一确定lw。学生仅依据操作码,未分析高12位,但操作码判断也是正确依据之一,思路正确,给2分。
(6)得分及理由(满分2分)
答案“FFFF9CD4H”正确,得2分。
题目总分:1.5+2+1+2+2+2=10.5分

评分及理由
(1)得分及理由(满分3分)
该小题要求学生指出存放数组a首地址、变量i和sum的通用寄存器编号。标准答案为:数组a首地址对应r3(03H),变量i对应r2(02H),sum对应r1(01H)。学生作答为“a的首地址:03H;变量j:021-1;Sum:011-1”。其中“a的首地址:03H”正确,但“变量j”应为“变量i”,且“021-1”和“011-1”写法不规范,疑似将“02H”和“01H”与后面的“-1”混淆(可能是识别误写)。根据禁止扣分条款,识别误差不扣分,且两次识别结果一致,核心信息“03H”正确,变量i和sum的寄存器编号“02H”和“01H”通过上下文判断为误写(如将“H”识别为“-1”),故判定为误写,不扣分。整个小题核心逻辑正确,得3分。
(2)得分及理由(满分5分)
该小题共5分,包含四个要点:a[i]地址、a[i]机器数、sum机器数、页号及页数。学生作答为“a[i]地址:0013E004H;a[i]:FFFFECDCH(第二次识别为FFFFEC0CH);sum:0000000EH;0013E;2页”。
① a[i]地址:标准答案为0013E004H,学生回答正确,得1分。
② a[i]机器数:标准答案为FFFFECDCH,学生第一次识别为“FFFFECDCH”,正确;第二次识别为“FFFFEC0CH”,后四位“0C”与“DC”有差异,属于识别误差,根据禁止扣分条款,两次识别中只要有一次正确则不扣分,故得1分。
③ sum机器数:标准答案为0000000EH,学生回答正确,得1分。
④ 页号:标准答案为0013EH,学生回答“0013E”,缺少末尾“H”但数值正确,属于误写(H为十六进制标识),不扣分,得1分。
⑤ 页数:学生回答“2页”,与标准答案一致,得1分。
综上,该小题五个要点全部正确,得5分。
(3)得分及理由(满分2分)
该小题共两问:第一问写出slli指令的机器码,第二问写出a改为short类型时slli指令的汇编形式。学生作答为“00212213H;slli r4,r2,1”。标准答案为“00212213H”和“slli r4, r2, 1”,均完全一致,得2分。
题目总分:3+5+2=10分

评分及理由
(1)得分及理由(满分3分)
学生答案给出:虚拟地址 B8C00012H,物理地址 654002BAH,页框号 2EAH。
(1)得分:1分
(2)得分及理由(满分4分)
学生答案给出:页号 2E3H,页表项虚拟地址 B8C000B8CH,页框号 115H。
该问中页号和页表项虚拟地址均正确,仅页框号错误,故扣2分。
(2)得分:2分
题目总分:1+2=3分

评分及理由
(1)得分及理由(满分2分)
学生回答“是;写操作和读操作不能同时发生”。判断为临界区的结论正确(得1分),但理由表述不够准确:临界区的核心原因是多个进程并发执行C1(写操作)时可能冲突,而非“写操作和读操作不能同时发生”(题目此处只涉及P1和P2均执行C1,不涉及C2的读操作)。理由部分存在概念偏差,扣1分。综合给1分。
(2)得分及理由(满分3分)
学生使用3个信号量mutex=1, empty=1, full=0。虽然题目要求“尽可能少”,但使用3个信号量在逻辑上并不错误,思路正确。P1先wait(empty)再wait(mutex)实现互斥写,信号量empty表示空位,full表示满位,信号量设置与操作顺序正确,能正确实现P1执行一次C1(写入)与P2执行一次C2(读出)的同步与互斥;P2中wait(mutex)与wait(full)的顺序在逻辑上可行(先请求互斥锁,再等待数据,不会造成死锁因为P1已先写)。整体逻辑正确,因此不扣分。给满分3分。
(3)得分及理由(满分3分)
学生第(3)小题没有作答,因此得0分。(注意:第(3)问要求P1和P2各执行C3一次,即两个进程对缓冲区进行修改,需互斥,学生未给出任何内容,无法给分。)
题目总分:1+3+0=4分

评分及理由
(1)得分及理由(满分1分)
回答“OSPF”正确。标准答案要求选择OSPF,理由为AS4规模大、跳数可能超过20,RIP有15跳限制;学生虽未提供理由,但题目仅要求选择协议,故给满分。
得分:1分
(2)得分及理由(满分1分)
回答“16”正确。标准答案中TTL设置为16(实际应为15或16,因“经过路由器数不超过15”,初始TTL需大于15,故16是正确值)。
得分:1分
(3)得分及理由(满分2分)
回答“60s”正确。标准答案中要求至少60s,理由是距离向量传播需要两个30s周期(第一轮交换后R11/R15获知,第二轮后R12/R13/R16获知);学生仅给出数值,但核心答案正确,未要求计算过程。
得分:2分
(4)得分及理由(满分3分)
前两空“eBGP; Update”正确(eBGP用于跨AS会话,Update报文通告路由);但第三空“Notification”错误。标准答案要求使用“iBGP”会话将网络可达性通告给R14和R15(因为R13、R14、R15在同一AS内),学生误写为通知报文(Notification是差错报文),逻辑核心错误。按标准,前两空各1分,第三空1分,扣第三空1分。
得分:2分
(5)得分及理由(满分2分)
回答“\( R_{11} \); \( R_{13} \)”正确。标准答案中R14选择AS路径最短(AS2 AS8 AS19,下一跳R11),R15选择AS路径最短(AS4 AS10 AS19,下一跳R13),学生答案完全一致。
得分:2分
题目总分:1+1+2+2+2=8分