简单理解计算机硬件结构与工作流程

名词解释

控制单元:控制单元是CPU的指挥中心,甚至是整套系统的控制中心,由指令寄存器IR(Instruction Register)、指令译码器ID(Instruction Decoder)和操作控制器OC(Operation Controller)三个部件组成。它根据用户预先编好的程序,依次从存储器中取出各条指令,放在指令寄存器IR中,通过指令译码(分析)确定应该进行什么操作,然后通过操作控制器OC,按确定的时序,向相应的部件发出微操作控制信号。
运算单元:运算单元指的是CPU中的运算器的运算器最小单元。可以执行算术运算(包括加减乘数等基本运算及其附加运算) 和逻辑运算(包括移位、逻辑测试或两个值比较)。
存储单元:存储单元包括 CPU 片内缓存Cache和寄存器组,是 CPU 中暂时存放数据的地方,里面 保存着那些等待处理的数据,或已经处理过的数据。 寄存器是CPU内部的元件,寄存器拥有非常高的读写速度,所以在寄存器之间 的数据传送非常快。

工作流程概述

当我们使用计算机执行某个命令时,比如点击浏览器的打开新窗口:
USB控制器将会把命令通过I/O总线传输给CPU;
CPU的控制单元则会去内存当中将指令取出并存储在指令寄存器中;
然后CPU通过指令计数器依次执行指令寄存器中的命令;
执行结束后,再通过I/O总线,把结果传输给图形适配器,此时我们接可以看到浏览器打开了新窗口。
简单理解计算机硬件结构与工作流程_第1张图片

运算操作

程序中运算操作是很常见的,那运算操作的执行顺序是怎样的呢?
我们以“a=a+1”的运算操作为例,首先控制单元会从内存中将这两条条指令从内存中取出,置于指令寄存器中;
接着操作控制器将a的原始值从内存中读取出来,存于存储单元的数据寄存器中(在这里不是直接将数据存在数据寄存器中,需要以“L3->L2->L1->数据寄存器”的顺序写入);
然后操作控制器会给运算单元发送指令,去计算a+1,并赋值给a;
运算单元将结果反馈给数据寄存器,更新a的值;
接着L1、L2、L3缓存也依次更新a值(此时不会立刻将a值更新到内存中);
最后等待合适的时机,将a值更新到缓存中。

【个人笔记】转载请注明出处!

你可能感兴趣的:(Java扩展)