【写在前面】
记录了一系列【系统分析师】文章,点击下面的链接,可以跳转
内容来源:希赛
视频:B站
从本篇文章开始,算是《系统分析师》考试中的‘基础知识’部分啦
之前的一系列文章,已经大概记录了整体框架
0、计算机硬件和指令(可跳过)
非考点,但是需要知道,便于后面的学习,只做基础记录
0.1 计算机的硬件基本系统
- 运算器
- 控制器
- 存储器
- 输入设备
- 输出设备
0.1.1 运算器
- 算数逻辑单元 ALU : 实现对数据的算数和逻辑运算
- 累加寄存器AC : 运算结果 或 源操作数的存放区
- 数据换缓冲寄存器DR : 暂时存放内存的指令 或 数据
- 状态条件寄存器 : 保存指令运行结果的条件码内容,如溢出标志等
总结:执行所有的算数运算,如加减乘除等;执行所有的逻辑运算并进行逻辑测试,如 与、或、非、比较等。
0.1.2 控制器
- 指令寄存器IR : 暂存CPU执行指令
- 程序计数器PC : 存放指令执行地址
- 地址寄存器AR : 保存当前CPU所访问的内存地址
- 指令译码器ID : 分析指令操作码
0.2 计算机指令
一条指令由 操作码和操作数 组成
- 操作码:决定要完成的操作
- 操作数:指参加运算的数据及其所在的单元地址
计算机中,操作要求和操作数地址都由二进制数码
表示,分别称为 操作码和地址码 ,整条指令以二进制编码的形式存放在存储器中
0.2.1 指令执行过程
- 取指令 : 取指
- 分析指令
- 执行指令
0.2.2 各种"寻址"
# 指令寻址方式
1、顺序寻址
2、跳跃寻址
# 指令操作数的寻址方式
1、立即寻址:指令的地址码字段指出的不是地址,是操作数本身
2、直接寻址:指令的地址码字段中直接指出操作数在主存中的地址
3、间接寻址:指令的地址码字段所指向的存储单元中存储是操作数的地址
4、寄存器寻址:指令的地址码字段是寄存器的编号
寄存器的寻址方式可以分为
(1)直接寻址:指令地址码给出寄存器编号,寄存器的内容就是操作数本身
(2)间接寻址:指令地址码给出寄存器编号,寄存器的内容就是操作数的地址,根据该地址访问主存后,才能得到真正的操作数
5、基址寻址:将基址寄存器的内容加上指令中的形式地址 而形成操作数的有效地址。优点:可以扩大寻址范围
6、变址寻址:将变址寄存器的内容加上指令中的形式地址 而形成操作数的有效地址。
7、相对寻址:把程序计数器PC的内容加上指令中的形式地址 而形成操作数的有效地址。而程序计数器的内容就是当前指令地址的内容,所以相对寻址是相对当前的指令地址而言的。
1、编码及浮点数运算
1.1 数的表示
高级考的不多,但是属于比较基础的内容,需要理解
# 编码方式
# 写在前面:原码的最高位是符号位,不参与计数
# 其他编码的最高位虽然也是代表正负号,但是参与计数
1、原码:一个数的正常二进制表示,最高位为符号位
数值0的原码两种表现形式: +0(0 0000000) -0(1 0000000)
2、反码:
(1)正数的反码即原码;数值+0的反码, +0(0 0000000)
(2)负数的反码:原码的基础上,除符号位外,其他各位按位取反
数值 -0的反码 -0(1 1111111)
3、补码:
(1)正数的补码即原码
(2)负数的补码:负数的反码+1,有进位产生进位
-0(0 00000000)
4、移码:用作浮点运算的阶码,无论正数负数,都是将该原码的补码的首位取反得到移码
1.2 浮点数计算
举例
2、计算机体系结构分类
2.1 按处理机数量分
非重点,知道就行
- 单处理系统
- 并行处理系统
- 分布式处理系统
2.2 flynn分类法
比较容易考
# 考点
1、按 指令流 和 数据流 分
2、哪个是不存在的?
MIMD : Multiple Instruction Multiple Data
3、CISC和 RISC
考的话,主要就是考CISC 和 RISC 的区别
4、流水线技术
需要掌握计算,如果考,只上午题考
4.1 相关概念
# 此处只统计,不解释,具体解释,往下看
1、超标量流水线
2、流水线的度
3、流水线周期
4、流水线吞吐率:
最大吞吐率:1/流水线周期
5、流水线加速比
流水线最大加速比=指令分段数=k
4.2 流水线(度为1)
例题
4.3 超标量流水线 (度为n)
例题
不能整除的话,向上取整:度为4, 15条,还是4
5、存储技术
5.1层次化存储结构
# 背下来
1、计算机采用分级存储体系的主要目的:
ANS:解决存储容量、成本和速度之间的矛盾
2、计算机采用分级存储体系的理论依据:
ANS:程序访问的局部性
例题
补充说明:局部性原理
5.2 存储器的分类
非重点、了解即可
5.3 Cache
5.3.1 cache页面淘汰
5.3.2 Cache页面置换算法
LRU LFU 考的多
cache一般到 KB 和 MB 级别
5.3.3 Cache映像
考点:主存和cache的映射,由硬件完成
# 1.全相联映像
主存0页,随机放到Cache的页中
# 2.直接相联映像
主存0区0页,要放到cache的0页中
主存0区1页,要放到cache的1页中
...
此时,如果要使用主存1区16页的内容,
需要先清cache的0页
再把主存1区16页,放到cache的0页
# 3.组相联映像 降低冲突率
既分区也分组
全相联映像 / 直接相联映像 / 组相联映像
例题
5.4 主存
5.4.1主存编址
5.4.2 磁盘
5.4.2.1 计算题
主要涉及计算题
存取时间=寻道时间+等待时间(平均定位时间+转动延迟)
例题1
例题2
5.4.2.2磁盘冗余阵列技术
5.5 总线
6、校验码
6.1 名词定义
# 需要掌握
1、检错和纠错的区别?
ANS:检错,检查出有错误即可;纠错,还需要更正
2、码字:合法编码,称为码字
3、码距:定义不好记的话,看例子吧
就单个编码A 00 来讲,码距为1,因为只需要改变1位就变成另一个编码
就两个编码中,由A码转为B码,需要改变的位数 就称为码距。
如:A:00 B:11 码距为2
一般来讲,码距越大,越利于纠错和检错
6.2 奇偶校验、CRC循环校验
# 奇偶校验:大概了解概念就好
# 需要掌握CRC的计算
1、先根据生成多项式找到【除数】和【k】
2、进行 亦或 运算,相同为0 ,不同为1 (模2除法)
3、CRC编码 = 信息位 + 校验码
补充说明:模2除
6.3 海明校验
7、系统可靠性分析
7.1 可靠性指标
例题
7.2 串并联系统可靠性
8、系统配置与性能评价
8.1 性能指标
8.1.1 计算机系统的性能指标
1、可靠性或可用性:计算机系统能正常工作的时间
其指标可以是:能够持续工作的时间长度(例如:平均无故障时间)
也可以是:在一段时间内,能正常工作时间所占的百分比。
2、处理能力或效率:又可分为三类指标
第一类:吞吐率:单位时间内能处理正常作业的个数
第二类:响应时间:从系统得到输入到给出输出之间的时间;
第三类:资源利用率:在给定的时间区间内,各种部件被使用的时间与整个时间之比。
8.1.2 计算机硬件性能指标
1、主频和CPU时钟周期
(1)主频:又称时钟频率 主频=外频*倍频
(2)时钟周期:是时钟频率的倒数。
如:主频为1GHz,则说明1s有1G个时钟周期,每个时钟周期为:1 / 1G = 1 / [1000*1000*1000] = 1ns
2、指令周期:取出并执行一条指令的时间
3、总线周期:完成一次总线操作所需的时间,如 访问存储器或IO端口操作所用的时间
# 关系
一个指令周期由若干个总线周期组成
一个总线周期邮包含若干个时钟周期
#
时钟周期 < 总线周期 < 指令周期
一些单位
MIPS:每秒处理的百万级的机器语言指令数,只要用于衡量标量机性能
MFLOPS:每秒处理的百万级的浮点操作,只要用于衡量t向量机性能
8.2 性能评价方法
1、时钟频率法:以时钟频率高低衡量速度;
2、指令执行速度法:用加法指令的运算速度来衡量计算机的速度
表示机器运算速度的单位是:MIPS
3、等效指令速度法:也称 吉普森混合法 或 混合比例计算法。
理解为 加权平均数
通过各类指令在程序中所占比列进行计算得到
特点:考虑各类指令比例不同
4、综合理论性能法 CTP
单位:每秒百万次理论运算 MTOPS - Million Theoretical Operations Per Second
5、基准程序法:目前承认的最好用的测试系统性能方法。 基准测试程序
把应用程序中用得最多的、最频繁的那部分核心程序作为评估计算机性能的标准程序,称为基准测试程序-benchmark
不仅考虑到了CPU的性能,还将IO结构、操作系统、编译程序等效率等系统性能的影响考虑进来
6、数据处理速率法:PDR
PDR值越大,机器性能越好
特点:考虑CPU+存储
基准程序法-benchmark
非重点
# 真实的程序---核心程序---小型基准程序---合成基准程序
1、Dhrystone基准程序:综合性的整数基准测试程序
2、Linpack基准程序:测试高性能计算机系统浮点性能
3、Whestone基准程序:综合性测试程序,主要由执行 浮点运算、功能调用、数组变址、条件转移和超越函数的程序组成
4、SPEC基准程序:
1)一种是:测试计算机完成单项任务有多快,称为速度测试来;
2)另一种是:测试计算机在一定时间内能完成多少项任务,称为吞吐率测试
5、TPC基准程序:评测计算机在事务处理、数据库处理、企业管理与决策支持系统等方面的性能。
TPC - Transaction Processing Council 事务处理委员会
该基准程序的评测结果用 每秒完成的事务处理数TPC来表示
8.3 阿姆达尔解决方案
例题