一.计算机系统的基本组成
1.1冯诺依曼体系:
计算机由运算器 + 控制器+存储器+输入设备+输出设备组成
CPU中央处理器:算数运算和逻辑判断
存储器:分为内存和外存,用于存储数据
输入设备:用户给计算机发号施令的设备
输出设备:计算机给用户汇报结果的设备
二.CPU的基本工作原理
2.1 CPU包含:
1.逻辑算数运算器
2.控制器
3.临时存储数据的存储单元(每个都只能保存一个整型数)---寄存器
4. 现代高级的CPU为了提升性能,一般都有缓存(level1,level2,level3缓存)
2.2算数逻辑单元ALU(CPU核心)
ALU是计算机中进行算数、逻辑运算的核心部件。
算数单元:负责计算机里的数字操作。包含+、-、*、/、%运算
逻辑单元:进行逻辑操作。包含and、or、nor等
ALU符号如图:
三个输入:
A:要参与计算的第一个数a
B:参与计算的第二个数b
C:本次运算是什么opcode
程序:opcode+a+b ...... (a,b和计算的结果都需要用寄存器来临时保存数据)
输出:正常输出
2.3 控制单元CU
CU包含:
1.PC:程序计数器,存储下一条要执行的指令在内存中的地址
2.IR:指令寄存器,存储下一条要执行的指令
CU的工作:
1.控制寄存器和内存数据来往
2.驱使ALU计算
2.4 指令(指导CPU进行工作的命令)
指令=操作码+被操作数
操作码表示要做什么动作,被操作数是本身指令要操作的数据,可能是内存地址,也可能是寄存器编号等。
指令作为一种特殊数据,以整型的形式保存在内存中
2.5 CPU的基本工作流程(ALU和CU的配合)
取码-解码-执行
如图,演示一个指令运行周期
1.取码阶段
根据PC的值,读指令到IR,PC正常情况下自动+1
2.解码阶段:CU按照预先设定的指令集解读指令数据
0010 1110
前四位:查1.2.3指令表可知,将数据加载到A寄存器
后四位:地址14
从地址为14的内存中加载数据到A寄存器
3.执行阶段:CU按规定执行指令
2.6 CPU的中断模式
(1)中断流程:
1.保存当前PC值到内存某个位置
2.修改PC值,让程序执行其他执行流
3.其他执行流执行结束后,通过刚保存的PC值恢复到PC寄存器
4.继续原来的执行流
(2)中断的常见作用:
1.I/O设备的处理
2.操作系统中用来进行进程调度
三.重点总结
1.程序=指令+数据,指令也可以看做是特殊的数据
2.任何数据基本都以整型、浮点型表示,以保存到内存中。“非数数据"都会按照一定标准格式编码成整型。
3.CPU = ALU+CU
ALU负责算数+逻辑运算,需要用寄存器完成中间数据的临时存储。
CU负责内存和寄存器的数据传递指令和驱动ALU工作
4.PC寄存器可以影响当前CPU的执行流,默认情况下正常顺序走,每次自动+1
CPU中提供了指令,可以修改PC值,进行产生分支逻辑
5.CPU正常工作周期:取码-解码-执行
6.CPU提供了中断模式,可以暂停当前执行流,先去执行别的执行流,并根据需要恢复原来的执行流。
7.CPU只知道执行的下一条指令是什么,不知道执行的属于那个程序。
8.代码中的一条语句可能会对应多条指令才能完成。