计算机组成基础
计算机的基本硬件组成:
- 运算器、控制器、存储器、输出输出设备
基础知识,不再赘述
cpu: 运算器和控制器
- 运算器: 算术运算,逻辑运算
控制器:
- 程序控制: 通过执行指令来控制程序的执行顺序
- 操作控制: 一条指令功能的实现需要若干信号来配合完成,cpu产生的每条指令的操作信号并将操作信号送往对应的不加,控制相应的不见按指令要求进行操作
- 时间控制: 指令执行过程中操作信号出现的时间持续时间及出现的时间顺序的控制
基础概念与组成
- 运算器: 有算数逻辑单元(ALU) 累加寄存器(AC)(存储 运算结果 与源操作数) 数据缓冲寄存器DR (暂时存放内存指令或者数据) 条件状态寄存器psw 保存指令运行结果与条件码内容)
- 控制器: 指令寄存器IR 程序计数器PC(存放指令执行地址) 地址寄存器AR(保存当前CPU所访问的内存地址)、指令译码器ID (分析指令操作码)
cpu预计指令周期的不同姐u但来区分二进制的指令和数据, 在指令周期的不同阶段,指令会命令cpu分别去取指令或者数据
校验码
- 码距: 在两个编码中从A码到b码所需要改变的位数
- 奇偶校验:码距2,增加一位校验码, 奇偶校验就是在数据尾怎加一位,确保数据中1的数量为奇数/偶数个。
crc 编码
crc编码只能检错,不能纠错。指令与存储系统
指令的组成:一条指令由操作码和操作数两部分组成,前面是操作码,后面是地址码, 操作码决定要完成的操作,操作数决定参加运算的数据及其所在的单元地址。地址码数量不唯一
指令执行过程 :
- 取指令
- 分析指令
- 执行指令
指令的寻址方式
执行当前指令后,下一指令位置
- 顺序寻址
- 跳跃寻址(这个应该结合汇编语言理解,可以简单理解为goto)由当前指令指定
操作数寻址方式(实际应用?)
- 立即寻址
- 直接寻址
- 间接寻址
- 寄存器寻址
- 基址寻址
- 变址寻址
指令系统
cisc 复杂指令系统 兼容性强,指令多,长度可变 , 微程序控制
risc 精简指令系统 指令少 硬逻辑
指令流水线原理: 将指令分成不同段,每段由不同的部分去处理,因此产生可以叠加的效果,所有的部件去处理指令的不同段
流水线技术是精简指令集独享的
risc 中的流水线技术:
- 超流水线技术(时间换空间
- 超标量 空间换时间
- 超长指令字
流水线时间计算
流水线周期: 指令分成不同的执行段,其中执行时间最长的段成为流水线周期
流水线执行时间: 1条指令总执行时间+ (总指令条数 - 1 * 流水线周期)
流水线吞吐率: 指令条数/执行时间
加速比: 不使用流水线 / 流水线执行时间
存储系统
计算机采用分级存储体系主要是为了解决存储容量、成本和岁都之间的矛盾问题
两级存储 cache 主存 主存 辅存
局部性原理:总的来说,在cpu运行时,所访问的数据会趋向于一个较小的局部空间地址内,包括下面两个方面
- 时间局部性原理; 如果一个数据正在被访问,在近期可能会被再次访问
- 空间局部性原理: 最近的将来会用到数据的地址和现在正在访问的数据地址很可能时接近的。
高速缓存cache : 当前获取的程序和数据, 直接与cpu交互,位于cpu和主存之间,
cache由 控制部分和存储器组成
地址映射,在cpu工作时,送出的主存单元地址,而应该应该从cache存储器中读写信息。因此需要将主存地址转换为cache存储器地址,这种地址转换由硬件自动完成。:
- 直接映射
- 全相联映射
- 组组相连映射
替换算法: 使cache获得尽可能高的命中率
- 随机替换算法
- 先进先出算法
- 近期最少使用算法
- 优化替换算法
命中率与平均时间
磁盘: 机械硬盘 多个盘面,多个扇区,多磁道
磁盘读取时间 = 寻道时间 + 旋转时间
寻道时间较长
几种常见的算法
- 先来先服务
- 最短寻道时间
- 扫描算法 (电梯算法)
- 单项扫描调度算法
输入输出技术
计算机系统中存在多种内存与接口地址的编址方法,
- 内存与接口地址独立编址
- 内存与接口地址统一编址方法。
计算机与外设数据交互方式
- 程序控制(查询)方式 :cpu主动查询外设是否完成了数据传输,效率极低
- 程序中断方式: 外设完成数据传输后,向cpu发送中断,等待cpu处理数据,效率相对较高,中断响应时间指的是从发出中断请求到开始进入中断处理程序;中断处理时间指的是从中断处理开始到中断处理结束。中断向量提供中断服务程序的入口地址。
*DMA 直接主存存取: cpu只需要完成必要的初始化等操作,数据传输的整个过程都由DMA控制器来完成,在主存与外设之间建立直接的数据通路。效率很高(共享内存??)
在一个总线周期结束之后,cpu会相应DMA请求开始读取数据; cpu响应程序中孤单方式请求时在一条指令执行结束时
时钟频率: cpu工作频率
总线结构
基本理论: 计算机设备和设备之间传输信息的公共数据通道。
任何链接两个以上电子元器件的导线都可以称为总线:
- 内部总线: 芯片
- 系统总线: 主板(数据总线,地址总线,控制总线(真分类)) ISA总线 EISA总线 PCI总线。
- 外部总线: 外设线等
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。