文章
21
粉丝
0
获赞
0
访问
2.0k
1.
2^5=32个通用寄存器,2^5=32,覆盖32位字长
2.
add时ALUBsrc取0,87654321H+98765432H,无符号操作数溢出,CF=1,F=10FDB9753,符号位反转,有符号数运算溢出,OF=1
3.shamt只取低5位,高位为0,扩展后也为0,数值上不变
4.ext=1,ALUctr=000
5.0-6为操作码,查表可知,03H为lw指令
6.A04H为FFFFA04H,偏移量为-5FCH,结果为FFFF9BE2
评分及理由
(1)得分及理由(满分2分)
学生回答通用寄存器数量为32个(2^5=32),正确;解释shamt字段占5位时提到“2^5=32,覆盖32位字长”,虽然表述不够精确(标准答案强调左移位数最大不超过32,故需5位表示),但意思基本正确。得2分。
(2)得分及理由(满分3分)
学生正确指出ALUBsrc=0(1分);计算F时给出结果10FDB9753H(实际应为1FDB9753H,因32位截断),但未写出正确十六进制值(应扣0.5分);指出CF=1和OF=1正确(各0.5分);但未明确回答无符号整数溢出应根据CF判断(标准答案要求),遗漏关键点(扣1分)。部分正确,得1.5分(1+0.5+0.5-1=1)。
(3)得分及理由(满分2分)
学生回答“shamt只取低5位,高位为0,扩展后也为0,数值上不变”,正确解释了无论零扩展或符号扩展(Ext=0或1)结果相同,与标准答案一致。得2分。
(4)得分及理由(满分2分)
学生正确回答Ext=1(符号扩展)和ALUctr=000(加法操作),与标准答案一致。得2分。
(5)得分及理由(满分2分)
学生仅通过操作码03H判断为lw指令(正确),但未分析高12位(A04H)与其他指令的区别(标准答案要求更全面论证),理由不完整(扣1分)。得1分。
(6)得分及理由(满分2分)
学生错误将A04H符号扩展为FFFFA04H(实际应为FFFFFA04H,少一个F),且计算偏移量时误解为-5FCH(错误),最终地址结果FFFF9BE2H错误(正确应为FFFF9CD4H)。计算过程完全错误,得0分。
题目总分:2+1+2+2+1+0=8分
登录后发布评论
暂无评论,来抢沙发