【发布时间】:2011-09-25 18:43:54
【问题描述】:
我们周二正在准备计算机组织与设计的期中考试,但我们都不懂以下问题:
procedure:
addi $sp, $sp, -4
sw $ra, 0($sp)
... Some unknown work is done ...
addi $sp, $sp, 4
lw $ra, -4($sp)
jr $ra
(1-H) 再次考虑上面的代码,并假设它有效。如果在执行过程中,“未知 work' 部分导致从内存中读取 100 个单词,将从中读取多少个单词 整个过程执行期间的内存? (考虑所有内存访问。
这是答案:106. 100 次内存读取用于未知工作,加上 5 次内存读取以读取所示指令,再加上 1 次内存读取在“lw”指令期间。
如果有人能帮助我们准确了解这 6 次内存读取中的每一个发生的位置,我们将不胜感激!
【问题讨论】:
-
顺便说一句,如果您提到确切的教科书及其版本,可能会指向相关部分。
-
谢谢!这是计算机组织与设计第 4 版。 ISBN 9780123744937 但是,我已经有了解决方案手册。我只是在寻找更彻底的解释。此外,这个特殊问题来自教授发布的练习中期(连同答案)。
-
我怀疑它可能来自COD,不幸的是我手头只有第二版,所以我不能给你一个好的章节引用。但是以后请记住包括问题中使用的教科书,因为它可能会引出更好的答案。