目录

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

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

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

控制器

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

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

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

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

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

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

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

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

运算器

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

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

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

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

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

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

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

整体处理流程

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


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

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

本文是转载文章,点击查看原文
如有侵权,请联系 xyy@jishuzhan.net 删除
相关推荐
曲幽1 天前
Python本地部署Stable Diffusion实现在纯CPU环境下的实现
python·ai·stable diffusion·cpu·openvino·lcm
比特冬哥4 天前
在MCU工程中优化CPU工作效率的几种方法
mcu·cpu
草捏子6 天前
从CPU原理看:为什么你的代码会让CPU"原地爆炸"?
后端·cpu
草捏子7 天前
为什么CPU缓存偏偏是三级?少一级不够,多一级浪费?
cpu
用户337667630124011 天前
cpu权限管理
cpu
用户337667630124012 天前
关于寄存器的秘密?流水线寄存器冲突的解决方案?原来真实寄存器的数量有可能上千个?
cpu
HyperAI超神经12 天前
【TVM教程】使用自定义调度规则(Sketch Rule)在 CPU 上自动调度稀疏矩阵乘法
人工智能·深度学习·矩阵·编程·cpu·计算机语言·tvm
王嘉俊9251 个月前
计算系统概述核心知识图谱(考研专项版)
考研·计算机组成原理·计组
A.sir啊1 个月前
计算机组成原理知识点精汇(一)计算机基础知识
硬件架构·cpu·计算机组成原理·冯诺依曼
不能只会打代码2 个月前
计算机组成原理—— 总线系统(十一)
fpga开发·计算机组成原理