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

本文深入解析了CPU的基本组成,包括逻辑门、算术逻辑单元(ALU)的工作原理,以及冯诺依曼体系结构中的关键组件如内存、输入输出设备和数据处理方式。重点讲解了ALU的运算单元和逻辑单元,以及CPU的工作流程:取码、解码和执行。同时涵盖了指令编码、数据存储(正反补码和非数数据编码)等内容。
摘要由CSDN通过智能技术生成

目录

 程序 = 指令 +数据

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 >> 内存 > 硬盘

 程序 = 指令 +数据

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

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

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

 

CPU的基本组成原理

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

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

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

① 逻辑门

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

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

2.门电路(Gate Circuit)

非门、 与门、或门、异或门 ..   (具体原理可以通过学习数电来了解)
  

 

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

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

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

  逻辑: 与、或、非

 

①算术单元(Arithmetic Unit)

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

 

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

 

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

  

②逻辑单元(Logic Unit)

    逻辑单元主要用来进行逻辑操作,最基本的操作就是 与、或、非操作,但不只是一位 (bit) 数的比较。

 ③ALU 符号

     通过图解,我们了解到通过基本的逻辑门电路,可以做出了一个 8 (bits) ALU
 当然现代的计算机中的 ALU 部件非常强 大,复杂度远远超过了我们的想象,32 位 甚至 64 位基本已经普及全球了。

⑤控制单元 CU(Control Unit)  

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

CPU 的基本工作流程 

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

1.取码阶段

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

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

2.解码阶段

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

例如: 0010  1110

  人为规定 : 0010  是 opcode 

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

地址: 0b1110  ->14

3.执行阶段

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

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

评论 9
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值