文章目录
一、数据的表示
1、进制的转换
1)、R进制转十进制
使用按权展开法:将R进制数的每一位数值用Rk 形式表示,k与该位与小数点之间的距离有关
例如:二进制 10100.01=1x24 +1x22 +1x2-2
七进制 604.01=6x72 +4x70 +1x7-2
2)、十进制转R进制
使用短除法
例如:非小数点部分除以R取余(从最低端开始向上)
小数部分乘以R取整
3)、二进制转八进制与十六进制
(1)二进制转八进制
二进制的三位对应一位八进制,从右到左分段,三位一段
例如:10001110 从右到左,最高位不足三位补零 010 001 110 分别对应八进制为:1x21 =2,1x20 =1,1x22 +1x21=6,所以对应的八进制数为216
(2) 二进制转十六进制
二进制的四位对应一位十六进制的数,从右到左,四位一段进行分段,高位不足四位补零
例如:10001110 分段后 1000 1110 ,分别对应 1x23 =8,1x23 +1x22 +1x21 =14=E
,所以对应的十六进制数为8E
4)、八进制或十六进制转二进制
与二进制转八进制或十六进制对应
十六进制转二进制时,将每一位数转化为四位二进制,然后拼接起来
八进制转二进制时,将每一位数转化为三位二进制数,然后拼接起来
2、原码反码补码移码
1)原码
将一个数转换为二进制数值,如果转换后的数值不足八位,则通过高位补0补齐八位
对于带符号位的原码,最高位为符号位,正数为0,负数为1。
2)反码
正数的反码与原码相同。
负数反码:除了符号位不变,在原码的基础上所有位取反。
3)补码
正数的补码与原码相同
负数补码:反码的基础上加1
补码可以进行算术运算
4)移码
用来做浮点运算的阶码
在补码的基础上,首位取反,其他位不变
5)数值表示范围
整数 | |
---|---|
原码 | -(2n-1-1)~2-1 -1 |
反码 | -(2n-1-1)~2-1 -1 |
补码 | -2n-1 ~2n-1 -1 |
其中,n表示数值的位数
3、浮点数运算
1)浮点数表示
浮点数表示:N=MxRe ,其中M称为尾数,e是指数,R为基数
2)运算步骤
对阶(小阶对大阶,即指数小的修改到指数大的数值)
尾数计算
结果格式化(必须修改为尾数的小数点左侧只有一位数值)
二、计算机结构
1、CPU结构(运算器与控制器的组成)
三、Flynn分类法
计算机体系结构的分类,将常见的计算机按照指令流和数据流两个指标进行分类,如下所示:
体系结构类型 | 结构 | 关键特性 | 代表 |
---|---|---|---|
单指令流单数据流SISD | 控制部分:一个;处理器:一个;主存模块:一个 | 单处理器系统 | |
单指令流多数据流SIMD | 控制部分:一个;处理器:多个:主存模块:多个 | 各处理器以异步的形式执行同一条指令 | 并行处理机,阵列处理机(处理数列),超级向量处理机 |
多指令流单数据流MISD | 控制部分:多个;处理器:一个;主存模块:多个 | 被证明不可能,至少是不实际 | 目前没有,有文献称流水线计算机为此类 |
多指令流多数据流MIMD | 控制部分:多个;处理器:多个;主存模块:多个 | 能够实现作业、任务、指令等各级全面并行 | 多处理机系统、多计算机 |
四、CISC与RISC
两种不同指令系统的区别比较
指令系统类型 | 指令 | 寻址方式 | 实现方式 | 其它 |
---|---|---|---|---|
CISC(复杂) | 数量多,使用频率差别大,可变长格式 | 支持多种 | 微程序控制技术(微码) | 研制周期长 |
RISC(精简) | 数量少,使用频率接近,定长格式,大部分为单周期指令,操作寄存器,只有Load/Store操作内存 | 支持方式少 | 增加了通用寄存器;硬布线逻辑控制为主;适合采用流水线 | 优化编译,有效支持高级语言 |
五、流水线技术
1、流水线基本概念
流水线是指在程序执行时多条指令重叠进行操作的一种准并行处理实现技术。
各种部件同时处理是针对不同指令而言的,它们可同时为多条指令的不同部分进行工作,以提高各部件的利用率和指令的平均执行速度。
2、流水线计算
1)流水线的执行时长问题
例题:若指令流水线把一条指令分为取指、分析和执行三部分,且三部分的时间分别是取值2ns,分析2ns,执行1ns.那么,流水线周期是多少?100条指令全部执行完毕需要的时间是多少?
流水线周期为执行时间最长的一段
流水线计算公式为:1条指令执行时间+(指令条数-1)*流水线周期
理论公式:(t1+t2+…+tk)+(n-1)*周期 一般情况使用
实际公式:(k+n-1)*周期 k为把指令执行分为几部分,没有理论公式计算结果时,选它
2)流水线的吞吐率计算
指在单位时间内流水线所完成的任务数量或输出的结果数量。计算流水线吞吐率的最基本的公式如下:TP=指令条数/流水线执行时间
流水线的最大吞吐率:TPmax=lim(n/(k+n-1)*周期)=1/周期
如上例题中:流水线的吞吐率为100/203
3)流水线的加速比
完成同样一批任务,不使用流水线所用的时间与使用流水线所用的时间之比称为流水线的加速比。
计算流水线加速比的基本公式如下:S=不使用流水线执行时间/使用流水线执行时间
如上例题可得:S=(2+2+1)x100/(2+2+1)+2x99=500/203
六、存储系统
1、层次化存储结构
速度: 慢----------------------------------------------------------------------------------------------------->快
存储器:外存(辅存)(硬盘、光盘、U盘等)–>内存(主存)–>Cache(按内容存取)–>CPU(寄存器)
2、Cache
- Cache的功能:提高CPU数据输入输出的速率,突破冯诺依曼瓶颈,即CPU与存储系统间数据传送带宽限制
- 在计算机的存储系统体系中,Cache时访问速度最快的层次
- 使用Cache改善系统性能的依据是程序的局部性原理