目录
计算机组成原理
数据的表示
进制转化
1.十进制转为R进制使用短除法。
2.每3个二进制位对应一个8进制位。
3.每4个二进制对应一个16进制位。
例子:
- 10 001 110 -> 2 1 6
- 1000 1110 -> 8 E
原码,补码,反码,移码
1.原码:将十进制数转为8位二进制数,其中最高位为符号位,正数为0,负数为1
2.反码:正数的反码就是其本身,负数的反码是在其原码基础上符号位不变,其余各位取反。
3.补码:正数的补码就是其本身,负数的补码是在其反码上加1
4.移码:在补码的基础上做首位取反
例子与产生的问题:
表示范围:
浮点数运算
浮点数的表示:
N = M * R^e
其中M称为尾数,e是指数,R为基数
对阶-> 尾数计算 -> 结果格式化
CPU的结构
运算器:
- 算数逻辑单元:ALU,做运算职能
- 累加寄存器:AC
- 数据缓冲寄存器:DR
- 状态条件寄存器:PSW
控制器:
- 程序计数器:PC
- 指令寄存器:IR
- 指令译码器
- 时序部件
计算机体系结构的分类
Flynn
一种计算器体系结构的分类方法;
CISC和RISC
流水线
概念
流水线的计算
其中k为分段;
例子:
使用理论公式计算:
(2+2+1)* (100-1)*2 = 203
使用实践公式计算:
(3 + 100 - 1)* 2 = 204
流水线的吞吐率计算
上面的例子计算吞吐率:
吞吐率 = 100 / 203
流水线的加速比
上面的例子计算加速比
((2+2+1)*100) / 203 = 500 / 203
流水线的效率
存储
层次化存储结构
Cache
概念
局部性原理
时间局部性
空间局部性
工作集理论:工作集是进程运行时被频繁访问的界面的集合
主存
分类
- 随机存取储存器
- 只读存储器
题目:
解题:
(1)空实际上就是大的内存地址 - 小的内存地址 + 1
第一个空计算方法:
C7FFFH - AC000H + 1
C 8 0 0 0
- A C 0 0 0
= 1 C 0 0 0
1C000 H = 1 * 16 ^ 4 + 12 * 16 ^ 3 = 114688
1C000 H / (2^10) = 114688 / 1024 = 112 K
第二个空计算方法:
112 K * 16 bit / (28 * 16 K * x) = 1 求x
x = 4
磁盘工作原理
磁盘结构与参数
题目:
一般情况下的磁盘示意图:
由于是单缓存区,所以读取R0后单缓存区需要花费3ms处理数据,这时候磁头已经到了R1的尾,这时需要读取R1则需要转一圈才行,
所以处理R0的时间为: 3 + 3 + 30
一直到处理到R9: 36 * 10
最后一个加R10 360 + 3 + 3 = 366ms
优化示意图:
这样优化后R0读取完处理完,刚好可以读取R1
这样就是 3 + 3 = 6 * 11 = 66ms
总线
- 内部总线
- 系统总线(数据总线,地址总线,控制总线)
- 外部总线
系统可靠性分析
串联系统与并联系统
-
串联系统
-
并联系统
模冗余系统与混合系统
题目
差错控制-CRC与海明码
码距: 就是变换几位可以到;
循环校验码CRC
可以做检错但是不能做纠错;
做异或,相同为假,不同为真;
题目
根据其生成多项式,可以得到 11011
进行模2运算:
所以其CRC编码结果为: 11001010101 0011
海明码
- 算出校验位数k
- 确定校验位在海明码中的位置
- 分组(重点,很多人蒙圈就在此)
- 求出校验位