给定信息:标签为14位,设置为8位,字ID为2位。输入从内存地址396BBA9中检索到的值。我对这个问题感到困惑,因为内存地址有28位,而标签集和字ID只有21位。我怎么处理额外的位?另外,如何确定单词中的特定字节?
我知道答案是45,这不是一个功课问题,我只想弄清楚如何处理这个问题。
答案 0 :(得分:2)
396BBA9的二进制 - > 11100101101011101110101001转换为26位。现在我们有14位用于标签,8位用于设置索引,2位用于字ID,这使得它总共24位。现在这个缓存是字节可寻址的,所以我们还需要2个位来访问一个字内的字节。
分解地址396BBA9然后 - 标签(11100101101011)设置(10111010或186)字(10)字节(01)。所以现在去设置索引186,匹配标签,转到单词10,访问字节01,即45。
希望它能解释。