本文已参与「新人创作礼」活动,一起开启掘金创作之路
一、计算机系统知识
1、数值表示:
原码表示范围:- (2^n-1^-1) ~ 2^n-1^ - 1 反码表示范围:- (2^n-1^-1) ~ 2^n-1^ - 1 补码表示范围: -2^n-1^~ 2^n-1^ - 1
浮点数的表示方法:
N=M*R^e^(M为尾数,e为指数,R为基数) 对阶方法:小阶对大阶,尾数右移n位 浮点数所能表示的数值范围主要由阶码决定,数值的精度由尾数决定
错误的检测与纠正
在一个码组内为了检测e个误码,最小码距 d >= e + 1 在一个码组内为了纠正t个误码,最小码距 d >= 2t + 1 码距:一个编码系统的码距是整个编码系统中任意两个码字的最小距离 例如:A=1,B=0,d=1; A=11,B=00,d=2; A=111,B=000,d=3
常用的校验码
海明码:通过扩大码距实现检错和纠错,须满足 2^k-1 >= n+k (n为数据位,k为校验位) 奇偶校验码:通过增加一位校验位来检验 循环冗余校验码:通过生成多项式为k个数据位产生r个校验位进行编码
2、计算机体系结构分类(Flynn)
| 名称 | 控制部分;处理器;主存模块 | 特点 |
|---|---|---|
| 单指令流单数据流(SISD) | 一个;一个;一个 | 运用于单处理器系统 |
| 单指令流多数据流(SIMD) | 一个;多个;多个 | 运用于并行处理机、阵列处理机、超级向量处理机等 |
| 多指令流单数据流(MISD) | 多个;一个;多个 | 被证明是不实际的 |
| 多指令流多数据流(MIMD) | 多个;多个;多个 | 能实现作业任务指令等各级全面并行,运用于多处理机系统、多计算机等 |
3、指令系统
| 名称 | 指令 | 寻址方式 | 实现方式 | 特点 |
|---|---|---|---|---|
| 复杂指令集计算机 (CISC) | 数量多,使用频率差别大,可变长格式 | 支持多种方式 | 微程序控制技术 | 研制周期长 |
| 精简指令集计算机 (RISC) | 数量少,使用频率接近,定长格式,大部分为单周期指令 | 支持方式少 | 增加了通用寄存器硬布线逻辑控制为主,适合采用流水线 | 优化编译,有效支持高级语言 |
指令的流水处理
1、流水线周期为执行时间最长的一段 2、执行时间 = 一条指令执行时间 +(指令数-1)* 流水线周期 3、吞吐率 = 指令系数/执行时间 4、最大吞吐率 = 1/周期时间 5、加速比 = 不使用流水线的时间/使用流水线的时间 6、流水线效率 = n个任务占用的时空区/k个流水段的总时空区 7、系统平均周期 = 命中率 * Cache周期时间 + (1-命中率) * 主存储器周期时间
4、计算机系统硬件基本组成
5、存储系统
高速缓存中的地址映像方法
直接映像:地址变换简单,灵活性差 全相联映像:灵活性好,变换复杂,速度慢 组相联映像:前两种方法的结合,组采用直接映像方式,块采用全相联映像方式
磁盘
磁盘存取时间 = 寻道时间 + 等待时间 等待时间 = 平均定位时间 + 转动延迟 磁盘格式化容量 = 面数 * 磁道数 * 扇区数 * 字节数 磁盘非格式化容量 = 面数 * 磁道数 * 内圆周长 * 最大位密度
采用中断方式管理I/O设备,cpu和外设可以并行工作