计算机原理(CPU是如何进行工作的?)

目录

 程序 = 指令 +数据

CPU的基本组成原理

① 逻辑门

1.电子开关 —— 机械继电器(Mechanical Relay)

2.门电路(Gate Circuit)

 ②.算术逻辑单元 ALU(Arithmetic & Logic Unit)

①算术单元(Arithmetic Unit)

②逻辑单元(Logic Unit)

 ③ALU 符号

⑤控制单元 CU(Control Unit)  

CPU 的基本工作流程 

1.取码阶段

2.解码阶段

3.执行阶段


现代的计算机, 大多遵守 冯诺依曼体系结构。因此冯诺依曼体系结构的讲解是十分重要的。

 在 冯诺依曼体系结构中 , 
· CPU 中央处理器 : 进行算术运算和逻辑判断.由 运算器 加 控制器构成
·存储器 : 分为外存和内存 , 用于存储数据 ( 使用二进制方式存储 )
·输入设备 : 用户给计算机发号施令的设备 .
·输出设备 : 计算机个用户汇报结果的设备 .
针对存储空间
硬盘 > 内存 >> CPU
针对数据访问速度
CPU >> 内存 > 硬盘
计算机原理(CPU是如何进行工作的?)_第1张图片

 程序 = 指令 +数据

      在冯诺依曼体系中 , 指令(一组预规定的动作)和数据都表现为一种特殊的数据,都需要存储在内存中,而内存是由电子元件组装而成 , 以二进制形式来存储文件。
因此:
    指令需要利用编码表规定来转换为操作码(opcode),才能存储在内存中。

    广义数据又分为 数据与非数的数据(例如:音乐,图片,字符串...)

  ①数据在内存中的存储,有限范围内的整数表示:正码,反码,补码。
                                         有限范围的小数表示 : IE标准。
  ②在计算机中进行”非数数据”的存储,则需要把非数数据通过 各种编码表 ——> 数类型数据。
          编码表:  字符串 -> 字符   Unicode 编码
                                            图片       RGB编码     .........
 所有程序的执行,本质上都是计算 + 读取 + 存入。
 读取: 内存( memory )     ->     寄存器 (register)
 存入 : 寄存器 (register )  ->   内存( memory )

 

CPU的基本组成原理

(1) 逻辑算数运算器 : 与 、或、 非、加、减、乘、除、取余

  (2) 控制器 :①  寄存器 (register):临时存储数据的存储单元(每个都只能保存一个整型数、但是不止一个)

                         ②现代的高级CPU为了提升性能 ,一般都带有缓存(CPU内的缓存)缓存会划分等级  L1/L2/L3缓存

① 逻辑门

1.电子开关 —— 机械继电器(Mechanical Relay)

计算机原理(CPU是如何进行工作的?)_第2张图片

  在发展过程中 , 逐渐由 机械继电器 ——>  真空管 ——> 晶体管  (具体工作原理可以通过数字电路技术来了解)。

2.门电路(Gate Circuit)

非门、 与门、或门、异或门 ..   (具体原理可以通过学习数电来了解)
计算机原理(CPU是如何进行工作的?)_第3张图片   计算机原理(CPU是如何进行工作的?)_第4张图片

计算机原理(CPU是如何进行工作的?)_第5张图片 计算机原理(CPU是如何进行工作的?)_第6张图片

 ②.算术逻辑单元 ALUArithmetic & Logic Unit

    ALU 是计算机中进行算数、逻辑运算的核心部件,是cpu的核心,是计算机的数学大脑。接下来,我用上一节构建的 逻辑门来完成自己的一个 ALU ,去学习理解它的工作模式,以便作为我们进一步理解现代计算机工作原 理的基石。

  算数:加法、减法、乘法、除法、取余

  逻辑: 与、或、非

 计算机原理(CPU是如何进行工作的?)_第7张图片

①算术单元(Arithmetic Unit)

  算数单元,负责计算机里的所有数字操作,比如四则运算,当然它能做的远远不止这些。
 大家通过图片来感受一下一个8位(bits)的加法器(adder)的实现过程。
    
     半加器:通过一个异或门与与门来构成

 计算机原理(CPU是如何进行工作的?)_第8张图片

全加器:通过两个半加器 和一个或门

 计算机原理(CPU是如何进行工作的?)_第9张图片

    8位数加法器:七个全加器 与一个半加器构成

  计算机原理(CPU是如何进行工作的?)_第10张图片

②逻辑单元(Logic Unit)

    逻辑单元主要用来进行逻辑操作,最基本的操作就是 与、或、非操作,但不只是一位 (bit) 数的比较。
计算机原理(CPU是如何进行工作的?)_第11张图片

 ③ALU 符号

     通过图解,我们了解到通过基本的逻辑门电路,可以做出了一个 8 (bits) ALU
 当然现代的计算机中的 ALU 部件非常强 大,复杂度远远超过了我们的想象,32 位 甚至 64 位基本已经普及全球了。
计算机原理(CPU是如何进行工作的?)_第12张图片

⑤控制单元 CU(Control Unit)  

CU 可以驱动 ALU 进行具体 的计算工作,

计算机原理(CPU是如何进行工作的?)_第13张图片

计算机原理(CPU是如何进行工作的?)_第14张图片

CPU 的基本工作流程 

cpu 就是在不停的执行着 取码 -> 解码 - >执行的过程。

1.取码阶段

CU 根据寄存器的值 ,去内存的响应位置,把数据(指令) 读取到IR寄存器中 

一般正常情况下 PC寄存器中的值自动 +1

2.解码阶段

CU 按照预先的指令集 解读指令数据(opcode + 操作数)

例如: 0010  1110

  人为规定 : 0010  是 opcode 

查询指令表: 知道 0010 代表的意思: 从后边地址指定内存处,将数据读取到 A寄存器

地址: 0b1110  ->14

3.执行阶段

LOAD 指令 应该由CU执行 ,所以按照规定执行指令:

从内存的14地址处,将数据读取到A寄存器中。

你可能感兴趣的:(python,java,java-ee)