计算机的主存储器与辅助存储器
主存储器 - 内存
◆RAM (随机存取存储器: Random Access Memory)
◆RAM通过电容存储数据,必须隔一段时间刷新一 次
◆如果掉电,那么一段时间后将丢失所有数据
操作系统位数和内存的关系
辅助存储器-磁盘
盘片平面图
辅助存储器 — 磁盘
◆表面是可磁化的硬磁特性材料
◆移动磁头径向运动读取磁道信息
辅助存储器 — 磁盘
◆先来先服务算法
◆最短寻道时间优先
◆扫描算法(电梯算法)
◆循环扫描算法
计算机的高速缓存
工作原理
字
是指存放在一个存储单元中的二进制代码组合
字块
存储在连续的存储单元中而被看作是一个单元的一组字
字和字块存储示意图
主存是(2的n次方个字)
字的地址包含两个部分
前m位指定字块的地址
后b位指定字在字块中的地址
◆一个字有32位
◆一个字块共B个字
◆主存共M个字块
2 的m次方 = M , 2 的b次方 = B
题目
缓存
缓存的计算
cpu、缓存、主存的交互
CPU需要的数据在缓存里
CPU需要的数据不在缓存里
不在缓存的数据需要去主存拿
重要性能指标:缓存命中率
◆命中率是衡量缓存的重要性能指标
◆理论上CPU每次都能从高速缓存取数据的时候,命中率为1
缓存命中率计算
访问高速缓存的平均时间
题目
总结
高速缓存的替换策略
替换时机:
当CPU需要的数据不在高速缓存中,那么就需要从主存中加载,将缓存中的数据替换
缓存替换算法
随机算法(Random)
先进先出队列算法(FIFO)
最近不经常使用算法(LFU)
最近最少使用算法(LRU)
计算机的指令系统
◆机器指令的形式
◆机器指令的操作类型
◆机器指令的寻址方式
机器指令的形式
机器指令主要由两部分组成:操作码、地址码
操作码
地址码
◆地址码直接给出操作数或者操作数的地址
◆分三地址指令、二地址指令和一地址指令
三地址指令
二地址指令
一地址指令
零地址指令
◆在机器指令中无地址码
◆空操作、停机操作、中断返回操作等
机器指令的操作类型
数据传输类型
◆寄存器之间、寄存器与存储单元、存储单元之间传送
◆数据读写、交换地址数据、清零置一等操作
算术逻辑操作
操作数之间的加减乘除运算
操作数的与或非等逻辑位运算
移位操作
◆数据左移(乘2)、数据右移(除2)
◆完成数据在算术逻辑单元的必要操作
控制操作类型
◆等待指令、停机指令、空操作指令、中断指令等
机器指令的寻址方式
指令寻址
数据寻址
指令寻址
顺序寻址
跳跃寻址
数据寻址
立即寻址
直接寻址
间接寻址
寻址方式比较
计算机的控制器
程序计数器
◆程序计数器用来存储下一条指令的地址
◆循环从程序计数器中拿出指令
◆当指令被拿出时,指向下一条指令
时序发生器
◆电气工程领域,用于发送时序脉冲
◆CPU依据不同的时序脉冲有节奏的进行工作
指令译码器
◆指令译码器是控制器的主要部件之一
◆计算机指令由操作码和地址码组成
◆翻译操作码对应的操作以及控制传输地址码对应的数据
指令寄存器
从主存或高速缓存取出计算机指令
主存地址寄存器
保存当前CPU正要访问的内存单元的地址
主存数据寄存器
保存当前CPU正要读或写的数据的地址
通用寄存器
◆用于暂时存放或传送数据或指令
◆可保存ALU的运算中间结果
◆容量比一般专用寄存器要大
计算机的运算器
运算器主要是用来进行数据运算加工的
组成
数据缓冲器
◆分 为输入缓冲和输出缓冲
◆输入缓冲暂时存放外设送过来的数据
◆输出缓冲暂时存放送往外设的数据
ALU
◆ALU:算术逻辑单元,是运算器的主要组成
◆常见的位运算(左右移、与或非等)
A、B:输入
F:输出
K:控制线
通用寄存器
◆用于暂时存放或传送数据或指令
◆可保存ALU的运算中间结果
◆容量比一般专用寄存器要大
状态字寄存器
总线
计算机指令的执行过程
指令执行过程
cpu流水线设计