文章
169
粉丝
0
获赞
0
访问
8.3k
1):86H,90H,7CH,
2):m是134,k1是-112;
3):可以,用一个选择器来表示此时运算是有符号运算还是无符号运算
4):通过标志位OF,unsigned int z2=x+y; int k2=m+n;会发生溢出
评分及理由
(1)得分及理由(满分3分)
学生答案:R1=86H(正确),R5=90H(正确),R6=7CH(正确)。答案与标准答案完全一致,得3分。
(2)得分及理由(满分2分)
学生答案:m是134(错误),k1是-112(正确)。变量m被声明为int类型,其值为134的补码表示(10000110B),在8位有符号整数中解释为-122,但学生错误地给出无符号值134。k1的值正确。因此扣1分,得1分。
(3)得分及理由(满分2分)
学生答案:可以,用一个选择器来表示此时运算是有符号运算还是无符号运算。理由基本正确,但表述不够准确(标准答案强调补码表示和加减运算无区别,但溢出判断不同)。学生提到了关键点(选择器),但未详细说明补码运算的通用性。因此扣0.5分,得1.5分。
(4)得分及理由(满分3分)
学生答案:通过标志位OF(正确),unsigned int z2=x+y(正确,但z2是无符号运算,溢出判断方式不同,标准答案未要求无符号溢出),int k2=m+n(正确)。学生正确指出了k2溢出,但误提了z2(无符号加法溢出不影响带符号判断),且未说明具体的溢出判断方法(最高位进位与符号位进位不同)。因此扣1分(判断方法不完整),得2分。
题目总分:3+1+1.5+2=7.5分
登录后发布评论
暂无评论,来抢沙发