注:所学教材为《计算机组成原理(第二版)》 唐朔飞 编著 ; 本次梳理涵盖内容为:
第一章 计算机系统概论
1.1 计算机系统简介
1.2 计算机的基本组成
参考内容以及图片来源为书本和csdn博文
计算机系统结构:主要研究软硬件功能的分配和对软硬件界面的确定。
计算机组成是计算机系统结构的逻辑实现。
计算机实现是对计算机组成的物理实现。
第三级: 虚拟机器M4(高级语言机器) 用编译程序翻译成汇编语言程序
第二级: 虚拟机器M3(汇编语言机器) 用汇编语言翻译成机器语言程序
操作系统: 虚拟机器M2 (操作系统机器) 用机器语言解释操作系统
第一级: 传统机器M1(传统机器M1) 用微程序解释机器命令
第零级: 微程序机器M0 (微指令系统) 由硬件直接执行微指令
-
1. 计算机由运算器、存储器、控制器、输入设备和输出设备五大部件组成
-
2. 指令(程序)和数据以二进制不加区别地存储在存储器中
-
3. 程序自动运行
-
1.
CPU(
Central
Processing
Unit) 中央处理器,核心部件为
ALU(
Arithmetic
Logic
Unit,算术逻辑单元)和
CU(
Control
Unit,控制单元)
-
2.
I/
O设备(受
CU控制)
-
3. 主存储器(
Main
Memory,
MM),分为
RAM(随机存储器)和
ROM(只读存储器)
-
//CPU与MM合成主机,I/O设备可称为外部设备
-
// 专业术语
-
1. Ad(Address) 形式地址
-
2. DR(Data Register) 数据寄存器
-
3. AR(Address Register) 地址寄存器(MAR)
-
4. IR(Instruction Register) 指令寄存器
-
5. BR(Buffer Register) 缓冲寄存器(MBR)
-
5. ID(Instruction Decoder) 指令译码器
-
6. PC(ProgramCounter) 程序计数器
取指令
指令译码
执行指令
访存取数
结果写回
-
1.取指令阶段
-
取指令(
Instruction
Fetch,
IF)阶段是将一条指令从主存中取到指令寄存器的过程。
-
程序计数器
PC中的数值,用来指示当前指令在主存中的位置。当一条指令被取出后,
PC中的数值将根据指令字长度而自动递增:若为单字长指令,则(
PC)+
1à
PC;若为双字长指令,则(
PC)+
2à
PC,依此类推。
-
//PC -> AR -> Memory
-
//Memory -> IR
-
2.指令译码阶段
-
取出指令后,计算机立即进入指令译码(
Instruction
Decode,
ID)阶段。
-
在指令译码阶段,指令译码器按照预定的指令格式,对取回的指令进行拆分和解释,识别区分出不同的指令类别以及各种获取操作数的方法。
-
在组合逻辑控制的计算机中,指令译码器对不同的指令操作码产生不同的控制电位,以形成不同的微操作序列;在微程序控制的计算机中,指令译码器用指令操作码来找到执行该指令的微程序的入口,并从此入口开始执行。
-
// { 1.Ad
-
//Memory -> IR -> ID -> { 2.PC变化
-
// { 3.CU(Control Unit)
-
3.访存取数阶段
-
根据指令需要,有可能要访问主存,读取操作数,这样就进入了访存取数(
Memory,
MEM)阶段。
-
此阶段的任务是:根据指令地址码,得到操作数在主存中的地址,并从主存中读取该操作数用于运算。
-
//Ad -> AR -> AD -> Memory
-
4.执行指令阶段
-
在取指令和指令译码阶段之后,接着进入执行指令(
Execute,
EX)阶段。
-
此阶段的任务是完成指令所规定的各种操作,具体实现指令的功能。为此,
CPU的不同部分被连接起来,以执行所需的操作。
-
例如,如果要求完成一个加法运算,算术逻辑单元
ALU将被连接到一组输入和一组输出,输入端提供需要相加的数值,输出端将含有最后的运算结果。
-
//Memory -> DR -> ALU
-
5.结果写回阶段
-
作为最后一个阶段,结果写回(
Writeback,
WB)阶段把执行指令阶段的运行结果数据“写回”到某种存储形式:结果数据经常被写到
CPU的内部寄存器中,以便被后续的指令快速地存取;在有些情况下,结果数据也可被写入相对较慢、但较廉价且容量较大的主存。许多指令还会改变程序状态字寄存器中标志位的状态,这些标志位标识着不同的操作结果,可被用来影响程序的动作。
-
//DR -> Memory
-
6.循环阶段
-
在指令执行完毕、结果数据写回之后,若无意外事件(如结果溢出等)发生,计算机就接着从程序计数器
PC中取得下一条指令地址,开始新一轮的循环,下一个指令周期将顺序取出下一条指令。
-
//重复 1~5
-
//遇hlt(holt on)停止
作者:admirersuper
链接:http://www.jianshu.com/p/bf88d5b5c250
來源:简书
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。