文章
35
粉丝
0
获赞
1
访问
4.5k
主存中页号应为32-12=20位,而push指令与ret指令的页号均为00401H,说明二者位于同一页中。
cache组号共有64/4=16组,需要4位组号,每组中有4块64B的cache块,总共需要8位表示块内地址,剩余的tag位为32-12=20位,故前20位表示tag,21-24位表示组号,剩余8位表示块内地址。
显然,地址00401025H的cache组号位0000,所以只会在Cache的第0组命中
评分及理由
(1)得分及理由(满分2分)
得分:2分
理由:学生正确分析了页号的计算方法,并指出push和ret指令的页号相同(均为00401H),因此位于同一页中。这与标准答案完全一致。
(2)得分及理由(满分1分)
得分:0分
理由:学生错误地认为块内地址需要8位(应为6位),导致后续的组号和tag位计算错误。标准答案中块内地址为6位,组号为4位,tag为22位。
(3)得分及理由(满分1分)
得分:0分
理由:由于第二问的组号计算错误(学生认为组号在21-24位,实际应为6-9位),导致此部分答案错误。
(4)得分及理由(满分1分)
得分:0分
理由:tag位的计算依赖于第二问的块内地址和组号位数,学生因第二问错误导致tag位计算错误(认为前20位是tag,实际应为前22位)。
(5)得分及理由(满分2分)
得分:2分
理由:学生正确分析了call指令的地址(00401025H)对应的Cache组号为0000B(即第0组),与标准答案一致。
题目总分:2+0+0+0+2=4分
登录后发布评论
暂无评论,来抢沙发