文章
183
粉丝
0
获赞
1
访问
60.4k
N
评分及理由
(1)得分及理由(满分2分)
第一问:学生回答计算f(10)需要调用f1共10次,与标准答案一致,得1分。第二问:学生指出第16行的call指令会递归调用f1,与标准答案一致,得1分。但学生作答中出现了"f(0)要调用f1"和"先调用f1(0)"等表述,存在逻辑错误,但根据上下文判断可能是识别错误,不扣分。
得分:2分
(2)得分及理由(满分2分)
第一问:学生正确识别出jle指令是条件转移指令,得1分。第二问:学生只列出了jmp指令一定会使程序跳转执行,但遗漏了call和ret指令,存在逻辑错误,扣1分。
得分:1分
(3)得分及理由(满分4分)
第一问:学生正确计算出第17行指令的虚拟地址为0040102AH,得1分。第二问:学生正确计算出偏移量为-2AH,但给出的补码表示有误(FFFFFD6H应为FFFFFFD6H),存在计算错误,扣1分。第三问:学生正确判断采用小端存储方式,得1分。
得分:3分
(4)得分及理由(满分4分)
第一问:学生正确指出原因是超过了int的最大表示范围,得2分。第二问:学生建议将int修改为double,虽然可以扩大表示范围,但标准答案更推荐使用long long整型类型,此处思路基本正确,得2分。
得分:4分
(5)得分及理由(满分4分)
第一问:学生回答"高32位与低32位的最高位不一样时OF = 1",这个描述不够准确,标准答案要求高33位为非全0或非全1,存在逻辑错误,扣2分。第二问:学生建议加一条"溢出跳转指令jof",但实际x86架构中没有jof指令,应该是溢出自陷指令,存在逻辑错误,扣2分。
得分:0分
题目总分:2+1+3+4+0=10分
登录后发布评论
暂无评论,来抢沙发