文章

164

粉丝

0

获赞

0

访问

8.2k

头像
2010年计算机学科专业基础综合试题 - 第44题回答
计算机组成原理
发布于2025年10月8日 11:28
阅读数 50


评分及理由

(1)得分及理由(满分3分)

学生答案:8×64B = 512B

标准答案:8×(64+20/8)B=532B

评分理由:学生只计算了数据部分(8行×64B=512B),但未考虑Tag字段和有效位的存储开销。根据直接映射Cache的结构,每个Cache行除了数据块外还需要存储Tag位和有效位。标准答案中计算了Tag字段19位+有效位1位=20位,即20/8=2.5B,因此总容量为8×(64+2.5)=532B。学生遗漏了这一关键部分,属于概念理解不完整。

得分:0分

(2)得分及理由(满分4分)

学生答案:a[0][3]行号为1,a[1][1]的行号为0

标准答案:a[0][31]行号为6,a[1][1]行号为5

评分理由:学生答案存在两个主要问题:

  • 第一,题目要求计算a[0][31]和a[1][1],但学生计算的是a[0][3]和a[1][1],这可能是识别错误(将31识别为3)。根据"误写不扣分"原则,如果是识别错误导致的问题不扣分。
  • 第二,即使考虑a[0][3]和a[1][1],学生的计算结果也不正确。a[0][3]的地址为320+3×4=332,332÷64=5余12,Cache行号应为5 mod 8=5,而不是1;a[1][1]的地址为320+256×4+1×4=1348,1348÷64=21余4,Cache行号应为21 mod 8=5,而不是0。
  • 学生的计算方法和结果都与标准答案不符,表明对Cache行号计算的理解有误。

得分:0分

(3)得分及理由(满分5分)

学生答案:程序A命中率15/16,程序B命中率0,程序A执行时间更短

标准答案:程序A命中率15/16(93.75%),程序B命中率0,程序A执行更快

评分理由:学生对程序A和程序B的Cache命中率分析完全正确,准确理解了行优先访问和列优先访问对Cache性能的影响。对程序执行时间的判断也正确。虽然表述中"一个Cache行能存储16个数组"应为"16个int型元素",但这属于表述不严谨,不影响核心逻辑的正确性。

得分:5分

题目总分:0+0+5=5分

登录查看完整内容


登录后发布评论

暂无评论,来抢沙发