目录
1、冯诺依曼体系是指指令也被视为数据,是一种特殊的数据。存储在内存当中。
总结
本章要点
- 从硬件角度学习计算机的基本工作原理。主要是CPU的基本工作原理。
- 从操作系统软件角度,学习我们的程序是如何工作起来的。
一、程序是什么?(重点)
程序 = 指令 + 数据
二、冯诺依曼体系
1、冯诺依曼体系是指指令也被视为数据,是一种特殊的数据。存储在内存当中。
2、五大结构
处理器(CPU)=>运算器 + 控制器
存储器 =>内存
输入设备
输出设备
注:内部的数据交换是通过总线
3、特殊数据(指令)是如何在内存中存储的?
前提:内存是由电子元件组成,以二进制的形式存储数据的。
指令是一组规定的动作——>利用编码规定——>形成操作码(opcode)
4、非指令的数据在内存中的存储问题
①数据:数和非数的数据(声音、图像、字符串...)
②要在计算机中进行“非数数据”的存储,就需要将它转换成数类型的数据,也是通过编码表
字符串 ——> 字符 Unicode编码 (ASCII编码是他的子集)
图片 ——>RGB编码
声音 ——>连续信号编码为离散信号
③数类型的数据在内存中的表示方法:
有限范围内的整数:正码、反码、补码
有限范围内的小数:IEEE754
三、CPU的基本工作原理(重点)
1、逻辑算数运算器
与、或、非、加、减、乘、除、取余
2、控制器
3、寄存器
临时存储数据的存储单元,每个只能存储一个整型数,但是数量很多。
4、现代高级CPU为了提高性能,一般会带有缓存
5、逻辑门
6、ALU算数逻辑单元
A:输入
B:输入
F:opcode 指导ALU进行什么运算
D:标志位、溢出、负数、0
R:输出
注:CPU是计算机的核心,ALU就是CPU的核心
7、CU控制单元
①功能:A.控制register <——>memory
B.驱使ALU计算
PC:程序计数器,存储下一条要执行的命令在内存中的地址
IR:下一条要执行的命令
四、CPU的基本工作流程
1、取码阶段
CU根据PC寄存器的值,去内存中的响应位置,把数据读取到IR寄存器中。正常情况下,PC寄存器中的值自动+1。
2、解码阶段
CU按照预先设定的指令集解读数据。
3、执行阶段
五、CPU的中断模式
正常模式下,CPU可以顺序执行,可以分支执行。但总归只能按照规定的顺序执行下去。现实生活中,很多时候需要暂时中断CPU当前执行流,让CPU干点别的工作,再回头来继续原来的执行流。
1、中断过程
- 保存当前的PC值到内存中的某个位置
- 修改PC值,让CPU执行其他执行流
- 其他执行流结束后,通过刚才保存的PC值恢复到PC寄存器
- 继续原来的执行流
2、中断的作用(了解)
- IO设备的处理
- 操作系统中用于进程调度
总结
- 由于硬件中的PC在自动+1,所以代码变成的指令才能够顺序执行;
- 代码中的一条语句,有可能是多条指令才可完成的。语句是一组指令的抽象封装;变量是一段内存空间的抽象封装。
- PC中的值在某指令周期中很关键,可以控制执行那里的指令。
- CPU的运算快慢就是看CPU执行周期的频率;CPU主频可以粗略的看作是每秒CPU可执行多少个指令周期。