文章
96
粉丝
0
获赞
0
访问
9.8k
评分及理由
(1)得分及理由(满分2分)
第一问:学生回答“需要调用10次f1”,正确,得1分。
第二问:学生回答“执行第16条指令会递归调用f1”,正确,得1分。
本小题得2分。
(2)得分及理由(满分2分)
第一问:学生回答“条件转移指令:12条”,正确(第12行jle指令),得1分。
第二问:学生回答“16、20、30条指令一定会使程序跳转”,正确(call、jmp、ret指令),得1分。
本小题得2分。
(3)得分及理由(满分4分)
第一问:学生回答“17行指定虚拟地址:0040102A”,正确,得1分。
第二问:学生计算过程有误,偏移量应为00401000H - 0040102AH = FFFFFFD6H,但学生计算为FFFFFFD6H(第一次识别)或FFFFFFD6H(第二次识别),结果正确,但计算过程表述不清晰(如“00401025 + 5 + A”等),但最终结果正确,不扣分,得2分。
第三问:学生回答“M采用了小端方式”,正确,得1分。
本小题得4分。
(4)得分及理由(满分4分)
第一问:学生回答“因为f1(13)运算结果溢出”,正确,得1分;但学生提到“int型变量最大可表示2³¹ - 1为2147483647”,正确,得1分。
第二问:学生回答“应将int f1(int n)修改为double f1(int n)或long f1(int n)”,但long在32位系统中通常为32位,仍可能溢出,标准答案为long long或double等。学生答案部分正确(double可行),但long可能不解决问题,扣1分,得1分。
本小题得3分。
(5)得分及理由(满分4分)
第一问:学生回答“当高32位中任一位与低32位中最高位相异时就会发生溢出”,表述不准确,标准答案为“高33位非全0或非全1”,学生答案接近但不够精确,扣1分,得1分。
第二问:学生回答“应加一条陷入指令”,正确,得2分。
本小题得3分。
题目总分:2+2+4+3+3=14分
登录后发布评论
暂无评论,来抢沙发