【学习笔记】软考系统分析师计算机系统计算题考点

我来帮你梳理"计算机系统"章节中涉及计算题的核心考点,这些都是系统分析师考试中几乎必考的内容:


一、Cache 命中率与平均访问时间(高频考点)

核心公式

复制代码
平均访问时间 = 命中时间 + (1 - 命中率) × 缺失惩罚(访问主存时间)

或简化为:

复制代码
平均访问时间 = 命中率 × Cache访问时间 + (1 - 命中率) × 主存访问时间

典型考法

  • 已知命中率、Cache访问时间、主存访问时间,求平均访问时间

  • 已知平均访问时间和其中两个参数,反求第三个

  • 多级Cache :L1未命中访问L2,L2未命中访问主存

    复制代码
    平均访问时间 = L1命中时间 + (1-H1)×[L2命中时间 + (1-H2)×主存时间]

例题思路

Cache访问时间1ns,主存访问时间100ns,命中率95%,则:

平均访问时间 = 0.95×1 + 0.05×100 = 5.95ns


二、流水线性能计算(高频考点)

核心公式

指标 公式
流水线周期 取各阶段时间的最大值(最慢阶段)
执行n条指令时间 建立时间 + (n-1)×流水线周期 = k×周期 + (n-1)×周期
吞吐率 指令数 / 总时间
加速比 非流水线时间 / 流水线时间 ≈ k(理想情况)
效率 加速比 / 流水线级数

典型考法

  • 计算n条指令在k级流水线中的执行时间
  • 计算吞吐率、加速比、效率
  • 流水线冒险导致的 stalls(停顿):插入气泡后的时间计算

例题思路

5级流水线,每级2ns,执行100条指令:

  • 流水线周期 = 2ns
  • 总时间 = (5 + 100 - 1) × 2ns = 208ns
  • 吞吐率 = 100 / 208ns ≈ 0.48条/ns
  • 非流水线时间 = 100 × 5 × 2 = 1000ns
  • 加速比 = 1000 / 208 ≈ 4.81

三、Amdahl 定律(几乎必考)

核心公式

复制代码
加速比 = 1 / [(1 - F) + F/S]
  • F:系统中可改进(被加速)部分所占比例(0 < F ≤ 1)
  • S:可改进部分改进后的加速比(S > 1)
  • (1-F):不可改进部分的比例

扩展公式

复制代码
改进后总执行时间 = 原总时间 × [(1-F) + F/S]
系统加速比 = 原总时间 / 改进后总时间

典型考法

  • 已知某部件加速比和占比,求系统整体加速比

  • 已知目标加速比,求某部件需要达到的加速比

  • 多个部件同时改进

    复制代码
    加速比 = 1 / [(1-ΣFi) + Σ(Fi/Si)]

例题思路

某系统某功能占60%,将其加速3倍:

加速比 = 1 / [(1-0.6) + 0.6/3] = 1 / [0.4 + 0.2] = 1/0.6 ≈ 1.67


四、CPU 性能公式(高频考点)

核心公式

复制代码
CPU执行时间 = 指令数 × CPI × 时钟周期
            = 指令数 × CPI / 主频

其中:

  • CPI(Cycles Per Instruction):每条指令平均时钟周期数
  • MIPS = 主频 / (CPI × 10⁶) = 指令数 / (执行时间 × 10⁶)

典型考法

  • 比较两台计算机性能(不同主频、不同CPI)
  • 编译优化后指令数减少但CPI增加,判断是否值得
  • 计算MIPS、MFLOPS

例题思路

计算机A:主频2GHz,CPI=2;计算机B:主频1.5GHz,CPI=1

  • A的MIPS = 2×10⁹ / (2×10⁶) = 1000
  • B的MIPS = 1.5×10⁹ / (1×10⁶) = 1500 → B更快

五、磁盘存取时间计算

核心公式

复制代码
磁盘存取时间 = 寻道时间 + 旋转延迟 + 传输时间
  • 寻道时间:磁头移动到目标磁道的时间(通常给定)
  • 旋转延迟:盘片旋转到目标扇区的时间 = 1/(2×转速)(平均情况)
  • 传输时间:读写数据时间 = 数据量 / 传输率

典型考法

  • 计算读取某文件的总时间
  • RAID相关:RAID 0读写条带化后的性能计算
  • 磁盘阵列总容量、有效容量计算

例题思路

磁盘转速7200rpm,平均寻道时间8ms,传输率100MB/s,读取4KB数据:

  • 旋转延迟 = 1/(2 × 7200/60) = 1/240 s ≈ 4.17ms
  • 传输时间 = 4KB / 100MB/s = 0.004/100 s = 0.04ms
  • 总时间 = 8 + 4.17 + 0.04 ≈ 12.21ms

六、存储器编址与容量计算

核心公式

复制代码
存储容量 = 字数 × 字长
地址线数量 = log₂(字数)  (按字节编址时,字数=字节数)
  • 地址范围计算:末地址 - 首地址 + 1
  • 字扩展、位扩展:用若干芯片组成目标存储器

典型考法

  • 给定地址范围,求存储容量

  • 用若干芯片组成某容量存储器,需要多少片?

    复制代码
    芯片数 = 总容量 / 单片容量
  • 地址线、数据线数量计算

例题思路

用16K×4位的芯片组成64K×8位的存储器:

  • 字扩展:64K/16K = 4组
  • 位扩展:8/4 = 2片/组
  • 总芯片数 = 4 × 2 = 8片

七、校验码计算(海明校验、CRC)

海明校验码

复制代码
校验位数量 r 满足:2ʳ ≥ k + r + 1  (k为数据位)
  • 校验位位置:1, 2, 4, 8, ...(2的幂次位置)
  • 能纠正1位错,检测2位错

CRC循环冗余校验

  • 生成多项式G(x)对应二进制
  • 被除数 = 原数据后面补(r个0),r为G(x)最高次幂
  • 模2除法(异或运算,不进位不借位)
  • 余数即为CRC校验码

八、可靠性计算(近年新增重点)

串联系统

复制代码
可靠度 R = R₁ × R₂ × ... × Rₙ

并联系统

复制代码
可靠度 R = 1 - (1-R₁) × (1-R₂) × ... × (1-Rₙ)

混合系统

  • 先化简并联部分,再按串联计算

典型考法

  • 计算系统整体可靠度
  • 比较不同架构的可靠性
  • MTBF(平均故障间隔时间)相关计算

九、数据传输率计算

总线带宽

复制代码
总线带宽 = 总线频率 × 总线宽度 / 8  (单位:B/s)
         = 总线频率 × 总线宽度       (单位:b/s)
  • 注意单位换算:1B = 8b

例题思路

总线频率100MHz,宽度32位:

带宽 = 100M × 32 / 8 = 400MB/s


十、进制转换与数值表示(基础但常考)

  • 原码、反码、补码、移码转换
  • 浮点数表示:阶码 + 尾数
  • IEEE 754标准 :单精度(32位)、双精度(64位)
    • 单精度:1位符号 + 8位阶码(偏移127)+ 23位尾数

计算题备考策略

优先级 考点 出现频率
⭐⭐⭐⭐⭐ Amdahl定律 几乎每年
⭐⭐⭐⭐⭐ Cache命中率/平均访问时间 几乎每年
⭐⭐⭐⭐⭐ CPU性能公式(CPI、MIPS) 高频
⭐⭐⭐⭐ 流水线性能计算 高频
⭐⭐⭐⭐ 磁盘存取时间 中高频
⭐⭐⭐ 存储器编址与容量 中频
⭐⭐⭐ 可靠性计算 近年增加
⭐⭐ 海明校验/CRC 偶尔
⭐⭐ 总线带宽 偶尔

建议 :每个公式至少做3-5道真题,特别注意单位换算多条件组合的题目!

相关推荐
以梦为马无处可栖2 小时前
AxVisor 深度学习笔记-ARM 虚拟化硬件原理
arm开发·笔记·深度学习
三品吉他手会点灯2 小时前
C语言学习笔记 - 5.C概述 - C的应用领域
c语言·笔记·学习
深蓝海拓3 小时前
基于QtPy (PySide6) 的PLC-HMI工程项目(十一)框架的进一步完善:UI的自动周期更新以及下行数据的生成和处理
网络·笔记·python·学习·ui·plc
lkbhua莱克瓦243 小时前
记单词功能深度优化项目 - 业务需求开发文档(BRD+技术拆分版)
笔记
我是无敌小恐龙3 小时前
Java SE 零基础入门 Day02 运算符与流程控制超详细笔记
java·数据结构·spring boot·笔记·python·spring·spring cloud
三品吉他手会点灯3 小时前
C语言学习笔记 - 4.C概述 - C的特点
c语言·笔记·学习
做cv的小昊3 小时前
【TJU】研究生应用统计学课程笔记(3)——第一章 数理统计的基本知识(1.4 正态总体的样本均值和样本方差的分布、1.5 充分统计量和完备统计量)
笔记·学习·线性代数·机器学习·数学建模·概率论
求学的小高3 小时前
数据结构Day6(普通树、森林与二叉树的关系、哈夫曼编码、并查集)
数据结构·笔记·考研
小陈phd3 小时前
多模态大模型学习笔记(三十六)——模型管理平台之 Xinference 部署
笔记·学习