文章
21
粉丝
0
获赞
0
访问
1.0k

评分及理由
(1)得分及理由(满分2分)
第一问:学生答案写“9次”,但标准答案为“10次”。错误原因:递归调用次数为n,f(10)应调用10次(从n=10递归到n=1)。核心逻辑错误,扣1分。
第二问:学生答案写“E8 Db FF FF FF call f1(00401000)”,虽写错指令地址格式,但指出了call指令,核心正确,不扣分。
本题实际得分:2-1=1分。
(2)得分及理由(满分2分)
第一问:学生答案写“jle f1 + 35h(00401035)”,正确识别条件转移指令,得1分。
第二问:学生答案写“call f1(00401000)和jmp f1 + 3Ah(0040103a)一定会使程序跳转执行”,缺少了“ret”指令。标准答案要求三条指令(call、jmp、ret),学生只写了两条,遗漏一条,逻辑不完全正确,扣1分。
本题实际得分:2-1=1分。
(3)得分及理由(满分4分)
第一问:第17行虚拟地址应为0040102AH(00401025H+5H),学生答“00401030H”,错误。属于计算错误,核心逻辑错误,扣1分。
第二问:偏移量应为FFFFFFD6H(目标地址00401000H - PC 0040102AH),学生答“25H”,错误。思路混淆,核心逻辑错误,扣2分。
第三问:学生回答“采用小端方式”,正确,得1分。
本题实际得分:4-1-2=1分。
(4)得分及理由(满分4分)
第一问:学生指出“因为数据太大溢出了所以不相等”,正确,得2分。
第二问:标准答案建议改为long long(或double等),学生写“将int改为double”。虽然double可表示更大范围,但浮点数类型可能改变原整型递归函数的语义(通常不建议),但思路正确(扩大表示范围),不扣分。
本题实际得分:2+2=4分。
(5)得分及理由(满分4分)
学生未作答(无内容),得0分。
本题实际得分:0分。
题目总分:1+1+1+4+0=7分
登录后发布评论
暂无评论,来抢沙发