news 2026/5/30 20:04:42

CPU中的逻辑单元、存储单元的介绍

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
CPU中的逻辑单元、存储单元的介绍

1. 逻辑单元

逻辑单元是CPU的“运算大脑”,负责执行所有的计算、比较和逻辑判断操作。其核心是算术逻辑单元

核心组件:算术逻辑单元

ALU是CPU中执行实际数据运算的电路。它主要执行两类操作:

  • 算术运算:加法、减法(通常用加法实现),有时还包括乘法、除法(在更复杂的CPU中或通过多次迭代完成)。

  • 逻辑运算:与、或、非、异或等位运算。这些是计算机做出简单“是/非”判断的基础。

  • 比较运算:通过减法来比较两个数的大小、是否相等,并设置状态标志。

关键特点:
  • 纯电路操作:没有记忆功能,输入信号一旦变化,输出立即变化。

  • 速度快:操作通常在一个时钟周期内完成。

  • 依赖操作数:它需要从存储单元(主要是寄存器)获取要处理的数据,并将结果写回存储单元。


2. 存储单元(CPU内部)

这里的存储单元特指CPU芯片内部的存储部件,用于在计算过程中高速暂存数据、指令和地址。它们是CPU能高速运行的关键,速度比外部的主内存快几个数量级。

CPU内部的存储单元主要分为以下几类,按速度从快到慢、容量从小到大排列:

a) 寄存器
  • 定义:CPU内部速度最快、容量最小的存储单元,由触发器电路直接实现。

  • 功能

    • 暂存操作数:为ALU提供马上要计算的数据。

    • 存放中间结果:存放ALU计算出的、需要立刻再次使用的数据。

    • 存放地址:指向内存中特定位置(如程序计数器PC,存放下一条指令的地址)。

    • 存放状态信息:存放ALU操作后的状态(如是否溢出、是否为负等,存储在状态寄存器中)。

  • 特点:数量很少(几十到几百个),每个都有特定名称和用途(如累加器EAX,基地址寄存器EBP),由指令直接访问。

b) 高速缓存
  • 定义:位于CPU和主内存之间的高速存储器,用于缓解CPU高速与内存低速之间的矛盾。

  • 层级:通常分为多级(L1, L2, L3)。

    • L1缓存:速度最快,容量最小(几十KB),通常分为指令缓存和数据缓存,集成在每个CPU核心内部。

    • L2缓存:速度与容量介于L1和L3之间(几百KB到几MB),通常每个核心独享或部分共享。

    • L3缓存:速度相对较慢,容量较大(几MB到几十MB),由同一CPU芯片上的所有核心共享。

  • 工作原理:基于“局部性原理”,将CPU近期可能用到的指令和数据从主内存复制到缓存中。CPU需要数据时,首先在缓存中寻找,如果找到则称为“命中”,速度极快;如果没找到则称为“缺失”,需要去较慢的主内存中读取。


总结与类比

单元核心组件作用速度/容量类比
逻辑单元算术逻辑单元执行计算和逻辑判断,是CPU的“工人”。工人的双手,直接干活。
存储单元寄存器存储CPU当前正在处理的指令、数据和地址办公桌上的便签贴,信息就在手边,触手可及,但空间极小。
高速缓存缓存常用指令和数据,作为内存与寄存器之间的桥梁。办公桌旁边的文件柜,容量比便签大,找东西比去档案室快得多。
(注:主内存)这是CPU外部的存储,但不可或缺。存放所有待处理的程序和数据。公司的大档案室,容量巨大,但距离远,取放东西慢。

它们如何协同工作?

以一个简单的加法指令C = A + B为例:

  1. 控制单元L1指令缓存取出“加法”指令并解码。

  2. 控制单元指挥将内存中(通过缓存)的AB的值加载到两个寄存器中。

  3. ALU从这两个寄存器中读取AB的值。

  4. ALU执行加法计算。

  5. 计算结果被写回另一个寄存器

  6. 最终,这个寄存器的值可能会被写回缓存/主内存中变量C所在的位置。

简而言之,逻辑单元(ALU)是CPU的执行引擎,而存储单元(寄存器、缓存)是为这个引擎高速供应“燃料”(数据)和“图纸”(指令)的保障系统。二者的紧密协作,共同实现了CPU的惊人计算能力。

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/5/30 14:27:13

云购系统介绍

介绍: YunGouCMS是一套适合海外用户裂变的1元购电商系统,支持高并发、多语言、原生APP等,紧跟市场需求。 YunGouCMS使用MVC框架(后端语言:PHP)和VUE前端开发,是企业运营级多语言云购夺宝系统。 前台支持18种语言&#…

作者头像 李华
网站建设 2026/5/30 14:27:43

Java 基础学习总结(214)—— Java 实现 MCP Server 详细指南

前言 MCP(Model Context Protocol,即模型上下文协议)是由 Anthropic(Claude 的母公司)于 2024年11月 开源发布的一项 全新技术。MCP 是为了解决大模型虽然强大,但是有时候无法获取实时信息以及访问特定工具!而 MCP 是一种让AI能够"伸出手"使用外部工具和服务…

作者头像 李华
网站建设 2026/5/30 14:26:35

C# 基于OpenCv的视觉工作流-章5-自动二值化

C# 基于OpenCv的视觉工作流-章5-自动二值化 本章目标: 一、自动二值化;二值化的分割阈值是固定值,整图所有像素值与分割阈值进行比较判断;而自动二值化的分割阈值是局部计算所得,计算方法是取局部区域的所有像素值&…

作者头像 李华