文章
132
粉丝
19
获赞
402
访问
73.3k

评分及理由
(1)得分及理由(满分2分)
学生回答“调用10次”正确(计算f(10)需要调用10次f1),得1分;回答“执行16行的call指令”正确,得1分。因此本小题得2分。
(2)得分及理由(满分2分)
学生回答“12行的jle f1+35h是条件转移指令”正确,得1分;回答“第16行的call指令,第20行的jmp指令一定会跳转”正确,但未提及ret指令(标准答案包括call、jmp和ret),由于题目问“哪几条指令一定会使程序跳转执行”,学生只答对两条,漏掉一条,扣0.5分。因此本小题得1.5分。
(3)得分及理由(满分4分)
学生回答“虚拟地址:0040102A H”正确,得1分;计算偏移量时,学生给出“X = - 2A H,转为补码X = FFD6 H”,但标准答案偏移量为FFFFFFD6H,学生只写出FFD6H,未扩展为32位,存在不完整,扣1分;回答“采用小端方式”正确,得1分。因此本小题得3分。
(4)得分及理由(满分4分)
学生回答“超过了int的表示范围,溢出”正确,得2分;回答“把返回类型int改为float或double”部分正确,但float/double可能引入精度问题,标准答案推荐long long(整型),学生未给出最佳方案,扣1分。因此本小题得3分。
(5)得分及理由(满分4分)
学生回答“当低32位的最高为1,而高32位不为全1,则溢出;或当低32位最高位为0,而高32位不为全0,则溢出,即高32位不为全1或全0时,OF = 1”正确,得2分;回答“添加一条陷入指令,跳转异常处理”正确,得2分。因此本小题得4分。
题目总分:2+1.5+3+3+4=13.5分
登录后发布评论
暂无评论,来抢沙发