【软考】缓存直接映射计算1

某32位计算机Cache容量16KB,Cache块大小为16Byte,假设主存与Cache地址映像采用直接映像方式,则主存地址为1234E8F8(十六进制)的单元,装入Cache的地址是( )。

A、00010001001101

B、01000100011010

C、10100011111000

D、11010011101000


根据搜索结果和标准解法,这道软考经典题的正确答案是:

C、10100011111000


✅ 详细解析如下:

已知条件:
  • 主存地址:1234E8F8H(十六进制)
  • Cache 容量:16 KB = 16×1024=1638416 \times 1024 = 1638416×1024=16384 字节
  • 块大小(Cache Line Size):16 Byte
  • 映射方式:直接映射
  • 地址按字节编址,32位

第一步:计算 Cache 行数 和 地址划分

  1. 块内偏移(Offset)位数

    块大小 = 16 B = 242^424 → Offset = 4 位

  2. Cache 总行数

    \\frac{16,\\text{KB}}{16,\\text{B}} = \\frac{16384}{16} = 1024 = 2\^{10} Index = 10 位

  3. Tag 位数

    32 − 10 − 4 = 18 位

所以主存地址结构为:

复制代码
[18 位 Tag] [10 位 Index] [4 位 Offset]

第二步:将主存地址 1234E8F8H 转为二进制

逐位转换(每1位十六进制 = 4位二进制):

复制代码
1    2    3    4    E    8    F    8
0001 0010 0011 0100 1110 1000 1111 1000

拼接成 32 位二进制:

复制代码
00010010001101001110100011111000

第三步:提取 Index(中间10位)

从右往左:

  • 最低 4 位(Offset):1000
  • 接下来 10 位(Index):1010001111
  • 剩余高位(Tag):000100100011010011

但注意!题目问的是 "装入Cache的地址"

在软考中,"Cache地址"通常指的是该数据在Cache中的完整地址,即 [Index][Offset] 拼接而成(因为Tag不存储在Cache地址中,而是作为标记比较用)。

✅ 所以 Cache 地址 = Index + Offset = 10 位 + 4 位 = 14 位

我们已经知道:

  • Index = 1010001111
  • Offset = 1000

拼接得:

复制代码
1010001111 1000 → 即 10100011111000

第四步:匹配选项

选项 C 正好是:10100011111000


✅ 最终答案:C

📌 关键点:题目问的是"装入Cache的地址",不是"Cache行号",也不是"Tag",而是 Cache内部的实际地址 = Index || Offset(共14位)


🔔 软考高频考点提醒:

  • 直接映射下,Cache地址 = Index + Offset
  • Index 决定放在哪一行,Offset 决定在块内的哪个字节
  • Tag 用于判断是否命中,不构成Cache地址的一部分

祝你备考顺利,轻松拿下嵌入式系统设计师证书!🎯

相关推荐
@insist1233 小时前
信息安全工程师-操作系统安全通用基础与七大核心机制
安全·软考·信息安全工程师·软件水平考试
@insist1232 天前
信息安全工程师-测评核心知识框架与关键流程(上篇)
安全·软考·信息安全工程师·软件水平考试
haokan_Jia2 天前
软考高项-变更管理工作程序-提炼
软考·高项·案例·高级·万金油
向上的车轮2 天前
《信息系统项目管理师教程(第4版)》——案例分析考点
软考·项目经理
@insist1233 天前
信息安全工程师-应急响应基础:核心概念、法律要求与分级标准
安全·软考·信息安全工程师·软件水平考试
@insist1233 天前
信息安全工程师-应急响应实战指南:流程、场景处置与演练体系
安全·软考·信息安全工程师·软件水平考试
haokan_Jia4 天前
软考高项-案例分析变更管理找问题
软考·高项·案例·高级·万金油
@insist1234 天前
信息安全工程师-网络安全风险评估(上篇):框架、流程与量化基础
网络·安全·软考·信息安全工程师·软件水平考试
@insist1234 天前
信息安全工程师-网络安全风险评估(下篇):风险计算、工具应用
网络·安全·软考·信息安全工程师·软件水平考试