【软考】缓存直接映射计算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中的完整地址,即 IndexOffset 拼接而成(因为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地址的一部分

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

相关推荐
幻风_huanfeng18 小时前
软考:高级软件架构师学习笔记----系统可靠性分析与设计
软考·高级系统架构师
@insist12320 小时前
系统集成项目管理工程师-信息技术发展(上篇)
软考·系统集成项目管理工程师·软考中项·软件水平考试
@insist1232 天前
系统集成项目管理工程师-信息与信息化基础(上篇)
软考·系统集成项目管理工程师·软考中项·软件水平考试
一米阳光86612 天前
软考(中级)软件设计师核心笔记(6)系统开发基础——需求分析、系统设计
笔记·职场发展·需求分析·软考·软件设计师·中级职称
@insist1232 天前
信息系统管理工程师-项目管理基础与五大过程组总览
软考·信管·软件水平考试·信息系统管理工程师
@insist1235 天前
信息系统管理工程师-云服务基础与云服务运营框架全解析
软考·软件水平考试·信息系统管理工程师·软考信管
@insist1235 天前
信息系统管理工程师-信息系统运维资源、技术与智能运维核心考点解析
运维·软考·信管·软件水平考试·信息系统管理工程师
@insist1237 天前
信息系统管理工程师-运维人员管理与核心运维过程(上篇)
数据库·软考·软件水平考试·信息系统管理工程师·软考信管
一米阳光86617 天前
软考(中级)软件设计师核心笔记(3)数据库系统——概念、数据库设计
数据库·笔记·职场发展·软考·软件设计师
@insist1239 天前
信息系统管理工程师-软件实现、部署交付与过程管理核心考点梳理
软考·软件水平考试·信息系统管理工程师·软考信管