求助计算机高手

某32位计算机的cache容量为16KB,cache块的大小为16B,若主存与cache的地址映射采用直接映射方式,则主存地址为0X1234E8F8H的单元装入的cache地址是多少?
要具体的解题部骤和详细的解释..你给我的答案..就是我原题的答案.我看不太懂..才问的..能不能把答案给解释一下

通常计算机存储体系结构分为缓存(Cache)、主存储器和外存储器三级。Cache速度最快、主存储器速率次之、外存储器速度最慢。任何程序要执行都必须调入到Cache中,Cache用来存储正在使用的程序和数据,通常Cache的数量都非常小。

任何程序要执行都需要从主存储器调入Cache中,将主存储器数据调入Cache的过程称之为地址映像。地址映像有直接映像、全相联映像和组相联映像三种方式。

直接映像:将主存储器每页复制到固定的Cache页中,将主存的地址与Cache地址直接对应,即主存的地址与Cache的地址相同。

全相联映像:主存储器每页可映射到Cache的任意一页。

组相关映像:将Cache分为多个组,主存储器中的各页与Cache中各组有固定的映射关系。

【例题】 某32位计算机的cache容量为16KB,cache块的大小为16B,若主存与cache的地址映射采用直接映射方式,则主存地址为0X1234E8F8H的单元装入的cache地址是多少?

【解答】Cache容量为16KB,Cache块的大小为16B,则Cache分为1024页,210=1024,则需要10位来表示Cache页号,直接映射将主存地址直接作为Cache页号,由于主存地址是32位,则取主存地址的后十位作为Cache页号。

将1234E8F8H转换为二进制为0001 0010 0011 0100,其最后十位为:10 1000 1111 1000,转换为十六进制为0X2EF8H。

你可以按照这个算一下
温馨提示:答案为网友推荐,仅供参考
相似回答