计算机的心脏:控制器与运算器的结构和功能

在计算机中,控制器和运算器就像人体的心脏和大脑,负责接收、解析指令,并将结果反馈回系统。如果你是一名软件开发人员,了解这两个硬件的基本结构和功能,将有助于你更好地理解软件和硬件的交互过程。

先看这张示意图,暂时看不懂也没关系,下面会有详细介绍。

控制器

首先,我们来看看控制器。控制器主要包含两个电路:

  • PC寄存器的计数器电路;

  • 解码与寻址的译码器电路。

PC寄存器,全称为程序计数器,就像一个指挥官,记录着下一条指令在主存中的地址。译码器电路则负责将取得的指令解析成计算机可以理解的操作信号和操作数。

控制器的主要工作流程包括三步:取指令、指令译码和传输。

  1. 取指令阶段,控制器会根据PC寄存器中的地址,从主存中读取指令。

  2. 在指令译码阶段,译码器电路将这些指令解析为操作信号和操作数。

  3. 最后,在传输阶段,控制器会通过电路将指令和数据传输到运算器。

运算器

接下来,我们看看运算器。运算器包含两个电路:

  • 运算的组合逻辑电路;
  • 存储数据的锁存器与D触发器电路。

组合逻辑电路,如加法器、减法器等,负责执行各种算术和逻辑运算。锁存器和D触发器是一种存储元件,可以在一定的条件下保持其输入状态。锁存器主要用来暂存一些不会频繁改变的数据,D触发器则非常适合用于需要同步更新状态的场景。

运算器的主要工作流程也是三步:接收指令、运算和输出。

  1. 首先,运算器接收来自控制器的指令和数据。

  2. 然后,根据输入的操作信号和数据,运算器进行相应的运算。

  3. 最后,将锁存器和D触发器中的运算结果输出到数据总线,以便写入主存。

整体处理流程

当我们在计算机上运行一个程序时,控制器首先从主存中取出程序的指令,然后通过译码器电路解析出操作信号和操作数。接着,这些指令和数据会被发送到运算器。运算器根据接收到的操作信号,使用组合逻辑电路进行运算,并将运算结果存储在锁存器和D触发器中。最后,控制器将这些结果会被写回到主存中,供程序的下一步使用。


欢迎关注微/信/公/众/号:萤火架构,及时获取更多架构经验分享。

通过以上的解析,我们可以看到,控制器和运算器在计算机中扮演着至关重要的角色。控制器像指挥官,解析并传递指令;运算器则像执行者,进行实际的计算并返回结果。只有理解了这些硬件的工作原理,我们才能更好地理解软件是如何在计算机中运行的。

相关推荐
HyperAI超神经2 天前
物理信息机器学习新突破!新型GNN架构可对复杂多体动力系统进行准确预测,赋能机器人/航空航天/材料科学
人工智能·深度学习·机器学习·架构·机器人·cpu·物理
认真的柯南3 天前
关于在 Kubernetes 环境中停止使用 CPU 限制的分析与建议
容器·kubernetes·cpu
爱吃橘子橙子柚子7 天前
3CPU性能排查总结(超详细)【Linux性能优化】
运维·cpu
myloveasuka18 天前
寻址方式笔记
汇编·笔记·计算机组成原理
@insist12319 天前
软考-软件设计师-计算机系统硬件基础与 CPU 核心构成
软考·cpu·软件设计师·寄存器
myloveasuka19 天前
指令格式举例
汇编·笔记·计算机组成原理
myloveasuka21 天前
定点运算---加减法运算
笔记·计算机组成原理
alanesnape1 个月前
CPU眼中的i++ 与 ++i
cpu·汇编语言
高新打工人1 个月前
cpu的fetch/prefetch
cpu·icu·icache
谷公子的藏经阁1 个月前
讲个AXI死锁场景
cpu·axi·死锁·deadlock·axi2ahb