数据的表示
进制转化
- 二进制转十进制(十进制以D表示)
- 从右往左,用二进制位上的数字乘以2的n次幂的和(n从0开始+1累加)
- 十进制转二进制(二进制以B表示)
- 十进制数不断除以2直至到0,得到的余数按从下而上的顺序排列得到的数值
- 二进制与八进制(八进制以O或Q表示)
- 二进制从右往左,每三位对应的都是八进制的一位数
- 二进制与十六进制(十六进制以H表示)
- 二进制从右往左,每四位对应的都是十六进制的一位数
1B = 8bit
1KB = 2^10B = 1024B
1MB = 2^20B = 1024KB
1G = 2^30B = 1024MB
原码反码补码移码
码制 | 定义 | 数码个数 |
---|---|---|
原码 | 最高位是符号位,其余低位表述数值的绝对值 | 2^n - 1 |
反码 | 正数的反码与原码相同,负数的反码是其绝对值按位取反(符号位不变) | 2^n - 1 |
补码 | 正数的补码与原码相同,负数的补码是其反码末位加1(符号位不变) | 2^n |
移码 | 补码的符号位按位取反 | 2^n |
- 定点正数,例如8位:-128补码认为规定位1000 0000
- 定点小数:-1补码人为规定位1000 0000
所以补码负数会多一个值
数据的运算是补码之间的计算
浮点数
N = 尾数 * 基数 ^ 指数
- 一般尾数用补码,阶码用移码
- 阶码的位数决定数的表示范围,位数越多范围越大
- 尾数的位数决定数的有效精度,位数越多精度越高
- 对阶时,小数向大数看齐
- 对阶是通过较小尾数右移实现的
逻辑运算
- 非
- 算数运算 乘除 > 加减
- 关系运算:大于 小于
- 逻辑运算:&& > ||
校验码
- 奇偶校验
- 只校验,不纠错
- CRC循环冗余校验
- 只校验,不纠错
- 采用模二除法
- 海明校验(必考)
- 可检错,也可以纠错
- 2^r >= m+r+1 m为信息位
CPU组成
考察概念,重点
- 运算器
- 算数逻辑单元ALU:数据的算术运算和逻辑运算
- 累加寄存器AC:通用寄存器,为ALU提供工作区,用在暂存数据
- 数据缓冲寄存器DR:写内存时,暂存指令或数据
- 状态条件寄存器PSW:存状态标志与控制标志(有争议,也可以归纳到控制器中)
- 控制器
- 程序计数器PC:存储下一条要执行指令的地址
- 指令寄存器IR:存储即将执行的指令
- 指令译码器ID:对指令中的操作码字段进行分析解析
- 时序部件:提供时序控制信号
寻址方式
- 立即寻址方式
- 操作数直接在指令中,速度快,灵活性差
- 直接寻址方式
- 指令中存放的是操作数的地址
- 间接寻址方式
- 指令中存放了一个地址,这个地址对应的内容是操作数的地址
- 寄存器寻址方式
- 寄存器存放操作数
- 寄存器间接寻址方式
- 寄存器内存放的是操作数的地址
CISC与RISC
指令系统类型 | 指令 | 寻址方式 | 实现方式 | 其他 |
---|---|---|---|---|
CISC(复杂) | 数量多,使用频率差别不大,可变长格式 | 支持多种 | 微程序控制技术(微码) | 研制周期长 |
RISC(精简) | 数量少,使用频率接近,定长格式,大部分为单周期周玲,操作寄存器,只有Load/Store操作内存 | 支持方式少 | 增加了通用寄存器;硬布线逻辑控制为主;适合采用流水线 | 优化编译,有效支持高级语言 |
流水线技术
流水线计算公式:
- 理论公式 :(t1+t2+…+tk)+(n-1)*t
- 实践公式:k*t+(n-1)*t
其中:
- t1/t2为每条指令的时间
- n为执行次数
- t为指令中最长执行时间
吞吐率计算公式
TP = 指令条数 / 流水线执行时间
流水线最大吞吐率
TP(max) = 1 / t
存储系统
必考
CPU -> Cache -> 内存(主存)-> 外存(辅存)
层次化存储结构(时间&空间局部性原理) - 分类
- 存储器位置
- 内存&外存
- 存取方式
- 按内容存取:相联存储器(如Cache)
- 按地址存取:
- 随机存取存储器(如内存)
- 顺序存取存储器(如磁盘)
- 直接存取存储器(如磁盘)
- 工作方式
- 随机存取存储器RAM(如内存DRAM)
- 只读存储器ROM(如BIOS)
Cache
概念类考察
- 直接相联映像:硬件电路简单,冲突率高,映射特定块
- 全相联映像: 硬件电路复杂,冲突率低,映射任意一块
- 组相连映像: 直接相联与全相联的折中
注:主存与Cache之间的地址映射由硬件直接完成
存储系统
计算类考察
- 存储单元
- 存储单元个数=最大地址-最小地址+1
- 编址内容
- 按字编址:存储体的存储单元是字存储单元,即最小寻址单位为一个字
- 按字节编制:最小寻址单位为一个字节
- 总容量
- 总容量=存储单元个数*编址内容
根据存储器所要求的容量和选定的存储芯片的容量,就可以计算出所需芯片的总数:
总片数=总容量/每片的容量
例题:
内存按字节编址,地址从A0000H到CFFFFH的内存,共有(192KB),若用存储容量为64KB*8bit的存储器芯片构成该内存空间,至少需要(3)片
输入/输出技术(IO)
概念类考察(必考)
- 程序控制(查询)方式:I/O能力不高,严重影响CPU利用率
- 程序中断方式:鼠标/键盘
- I/O系统发出中断请求信号
- 保存正在执行程序的现场(保存现场),打断程序当前位置即为断点
- 通过中断向量表转入I/O中服务程序
- 返回被打断的程序继续执行(恢复现场)
- DMA方式:移动硬盘
- 通道方式
- I/O处理机
总线
了解概念
可靠性
1-2分,了解概念,会计算可靠性
MTTF指平均无故障时间,则计算软件可靠性公式为:
MTTF/(1+MTTF)
性能指标
了解概念,会计算
- 字长与数据通路宽度
- 主存容量和存取速度(主频与CPU时钟周期)
- 运算速度(CPI与IPC)
- 吞吐量与吞吐率(MIPS与MFLOPS)
- 响应时间(RT)与完成时间(TAT)
- 兼容性
CPI:平均每条指令的平均时钟个数
IPC:每时钟周期运行指令个数
MIPS:百万条指令每秒
MFLOPS:百万浮点操作每秒
例题:CPU主频2.8GHz,平均CPI为3.5,运算速度用MIPS表示,约为(800)