一、数制转换
- 二进制用字母 B 表示;
- 八进制用字母 Q 表示;
- 十进制用字母 D 表示;
- 十六进制用字母 H 表示
1、R进制——>十进制
使用按权展开法,将R进制的每一位数值用R的k次方形式表示
- 二进制——>十进制
- 八进制——>十进制
2、十进制——>R进制
使用短除法
- 十进制——>二进制(注意余数的书写位置)
- 十进制——>八进制
方法同上
3、二进制——八进制
从右到左,3位二进制数字一组,左边不足3位时高位补0
4、二进制——十六进制
从右到左,4位二进制数字一组,左边不足4位时高位补0
二、数的表示
机器数中,小数点不占二进制位
原码
- 直接转成的二进制数——
一般是8位二进制数组成
- 最左边一位是符号位,0表示正数,1表示负数
- 原码不能直接计算加减法,否则会产生错误
比如0000 0001(1)+1000 0001(-1)= 1000 0010(-2)
反码
- 正数的反码 = 其原码
- 负数的反码——取符号位不变,其余各位按位取反
- 不适合加减法计算
比如:1000 0001(-1)的反码 = 1111 1110(-126)
补码
- 正数的补码 = 其原码
- 负数的补码 = 符号位不变,其余各位按位取反,末位加一
常用于加减法运算
比如:1(0000 0001)的补码为0000 0001,
-1(1000 0001)的补码为1111 1111
那么1+(-1)就可以用其对应的补码相加
0000 0001 + 1111 1111 = 0000 0000 (高位溢出)
移码
- 常用语浮点数的阶码,类似于科学计数法
- 移码 = 其补码的符号位取反
整数数值范围
整数数值范围 | |
---|---|
原码 | -(2n-1-1)~2n-1-1 |
反码 | -(2n-1-1)~2n-1-1 |
补码 | - 2n-1~2n-1-1 |
移码 | - 2n-1~2n-1-1 |
假如n = 8时,
整数数值范围 | 二进制表示 | |
---|---|---|
原码 | -127 ~ -0 ,+0 ~ +127 | 1111 1111 ~ 1000 0000 , 0000 0000 ~ 0111 1111 |
反码 | -127 ~ -0 +0 ~ +127 | 1111 1111 ~ 1000 0000 , 0000 0000 ~ 0111 1111 |
补码 | -128 ~ 0 ~127 | 1000 0000 ~ 0000 0000 ~ 0111 1111 |
移码 | -128 ~ 0 ~127 | 1000 0000 ~ 0000 0000 ~ 0111 1111 |
注意:-128没有对应的原码和反码
,-128 = 1000 0000 。
定点数与浮点数
1、定点数
小数点的位置固定不变,`小数点不占用一位二进制位`
- 定点整数
小数点在最低有效位之后(比如8位原码 : 0000 0000 .) - 定点小数
小数点在符号位之后,最高有效位之前 (比如8位原码:0.000 0000)
2、浮点数
- N = M * R e
M:尾数
e:指数
R:基数
一般保存尾数和指数即可。存储形式为:
阶符 | 阶码 | 数符 | 数码 |
---|---|---|---|
符号位 | 决定数值的表示范围 | 符号位 | 决定数值表示的精度 |
尾数部分越长,精度越高(尾数和指数的总位数是固定的)
类似于科学计数法的形式。比如5*108
三、计算机的组成
冯·诺依曼体系5大部件
- 输入设备
- 输出设备
- 运算器
- 控制器
- 存储器
中央处理器(CPU) = 运算器+控制器
中央处理器 = 运算器 + 控制器 + 内部总线 + 寄存器组
CPU + 主存储器 = 主机(不同于生活中常说的主机)
运算器
- 算数逻辑单元ALU——执行算数和逻辑运算
- 累加寄存器——存储运算的
一个
操作数和操作结果 - 数据缓冲寄存器——保存操作数和操作结果
- 状态条件寄存器
控制器
- 程序计数器 PC——下一条要执行指令的地址
- 指令寄存器IR—— 暂存当前正在执行的指令
- 指令译码器
- 时序部件
基本概念
- CPU的性能指标
主频
字长——CPU一次能处理的二进制位数
CPU缓存——Cache
核心数量 - 总线的分类(功能)
数据总线——一般和字长一致
控制总线
地址总线——决定了CPU可以访问的物理地址空间,即CPU能够使用多大容量的内存
- 总线的性能指标
带宽——单位时间内传送数据的大小(MB/s)
位宽——总线能够同时传送的二进制位数,一般与CPU的字长相等
工作频率 - 指令
——一组有意义的二进制代码
组成:操作码+地址码
寻址方式
- 立即寻址——操作数放在地址码部分
- 直接寻址——操作数存在内存中,指令直接给出操作数所在存储单元的地址
- 间接寻址
- 寄存器寻址——
操作数不在主存中,而在寄存器中
- 寄存器间接寻址——
操作数在主存中,操作数的地址存在寄存器中
- 相对寻址——偏移量
- 基址寻址
- 变址寻址
CISC和RISC
四、基本概念
地址
整个内存被分成若干个存储单元,为了有效存取该单元内存储的内容,每个单元都必须有唯一的编号(成为地址)来标识。
位
存放一位二进制的输即0或1称为位(bit,简写b)
字节
8个二进制位为1个字节(Byte,简写为B)
单位换算
五、流水线
——多条指令重叠进行操作的一种准并行
处理实现技术
- 流水线周期——执行时间最长的阶段时间
- 流水线(时间)计算公式
n 为指令条数
——Nt + (n-1)t (不常用)----流水线周期 * 阶段数 +(n - 1)* 流水线周期
——单条指令所需时间 + (n-1)* 流水线周期
- 流水线的呑吐率(TP):TP = n / T (指令条数/流水线执行时间)
——单位时间内完成指令的数量
【例题】
【解答】
1、流水线周期 = 2ns
2、流水线时间=单条指令所需时间 + (n-1)* (流水线周期)
=(2+2+1)+(100-1)* 2
=203 ns
六、输入输出
中断方式
- 中断响应时间
- 中断向量——获取中断时作业的入口
DMA(Direct Memory Access直接存储器访问)
- 特点——
在传送数据块的过程中不需要CPU干扰
七、存储体系
多级存储器结构
- 虚拟存储:非连续内存分配是在内存里找存储空间,虚拟存储是在非连续内存存储的基础上,把一部分内容放到外存里的做法,可以让应用程序可使用更大的空间。
- 存储器分类(
前3按寻址方式分,Cache按照内容寻址
)
顺序存取、直接存取、间接存取、相联存取
Cache
- 组成
控制部分
Cache存储器部分 由硬件控制
地址映象
- 直接映象
主存中的某一块(D1区)只能放在Cache中对应的块(D1区) - 组相联映象
x块一组,组内的区块可相互映射,但是主存中的组必须和cache中的组对应 - 全相联映象
主存中的任意一个块都可以放在Cache中的任意一个块
八、校验码
奇偶校验(重点)
- 特点:
仅可检错,且可检测奇数位错误
- 奇校验
1的个数为奇数位 - 偶校验
1的个数为偶数位
CRC循环冗余校验(了解)
- 特点:
仅可检错,可检验多位错
- 组成
数据位 + 校验位 - 采用模2除
海明码(了解)
- 特点:
可检错和纠错,纠1位错或多位错
- 公式:
2k - 1 >= n + k
n :数据的二进制位数
k:校验位位数
【例题】
要传输48位数据,需要插入多少位校验位?
2k - 1 >= n + k
——k = 6
故需要插入6位校验位