cpu主要由什么组成
CPU 主要由以下几部分组成:
运算器
- 算术逻辑单元(ALU):是运算器的核心部件,主要完成二进制代码的定点算术和逻辑运算,如加法、减法、乘法、除法等算术运算,以及与、或、非、异或等逻辑运算。它就像是一个多功能的计算器,能够对数据进行各种基本的数学和逻辑处理.
- 累加寄存器(AC):通常简称为累加器,是一个通用寄存器。当运算器的算术逻辑单元执行算术或逻辑运算时,为 ALU 提供一个工作区。例如在进行减法运算时,先将被减数暂存在累加器中,再从内存储器中取出减数,然后与累加器中的内容相减,最后将所得结果送回累加器中.
- 数据缓冲寄存器(DR):在对内存储器进行读 / 写操作时,用于暂时存放由内存储器读 / 写的一条指令或一个数据字,将不同时间段内读 / 写的数据隔离开来。其主要作用是作为 CPU 和内存、外部设备之间数据传送的中转站,以及在操作速度上的缓冲。在单累加器结构的运算器中,数据缓冲寄存器还可兼作为操作数寄存器.
- 状态条件寄存器(PSW):保存由算术指令和逻辑指令运行或测试的结果建立的各种条件码内容,主要分为状态标志和控制标志,例如运算结果进位标志(C)、运算结果溢出标志(V)、运算结果为 0 标志(Z)、运算结果为负标志(N)、中断标志(I)、方向标志(D)和单步标志等。这些标志通常分别由 1 位触发器保存,反映了当前指令执行完成之后的状态.
控制器
- 指令寄存器(IR):用来存放当前正在执行的一条指令。当执行一条指令时,通常先将其从主存储器读出到主存数据寄存器中,然后再送往指令寄存器中。指令译码器会根据指令寄存器中的内容产生各种微操作指令,以控制其他组成部件工作,完成所需的功能.
- 程序计数器(PC):又称为指令计数器或指令指针 IP,用于存放下一条要执行指令的地址,决定了程序执行的先后顺序。在开始执行程序前,须将程序的起始地址送入 PC,以便从程序的第一条指令开始执行。当现行指令执行完毕,通常由程序计数器提供后继指令地址,并送入主存的地址寄存器。当遇到转移指令时,需改变程序的执行顺序,则由转移指令形成转移地址送往 PC 作为后继地址.
- 地址寄存器(AR):保存当前 CPU 所访问的内存单元的地址。由于内存和 CPU 存在着操作速度上的差异,所以需要使用地址寄存器保持地址信息,直到内存的读 / 写操作完成为止.
- 指令译码器(ID):对指令中的操作码字段进行分析解释,识别该指令规定的操作,并向操作控制器发出具体的控制信号,以控制各部件工作,完成所需的功能.
- 时序部件:提供时序控制信号,确保计算机各个操作按照一定的时间顺序进行,类似于乐队中的指挥棒,协调各部件的工作节奏.
寄存器组
- 通用寄存器:CPU 内部通常设置有一组通用寄存器,每个寄存器都可以提供多种用途。它们可为 ALU 提供操作数并存放运算结果,也可用作变址寄存器、地址指针和计数器等 。通用寄存器本身在逻辑上只具有接收信息、存储信息和发送信息的功能,但通过编程以及与 ALU 的配合可以实现多种功能.
- 控制寄存器:包括存储器地址寄存器(MAR)、存储区数据寄存器(MDR)等。MAR 存放被访问单元的地址,MDR 存放存储器中的数据或从存储器读出的数据,它们在 CPU 与主存之间的数据传输过程中起着重要作用.
总线
- 内部总线:连接 CPU 内部的各个部件,如 ALU、寄存器、控制器等,为它们之间的信息传送提供通路,使各部件能够相互通信和协同工作.
- 系统总线:用来连接 CPU、主存储器与 I/O 接口,通常包括三组总线,即数据总线、地址总线和控制总线。数据总线主要传送各大部件间的数据信息,如指令代码、操作数、命令字或状态字等;地址总线用于传送主存单元地址码或 I/O 端口地址;控制总线用于传送控制、状态信息,其中有 CPU 发出的控制信号,也有送入 CPU 的状态信号.
高速缓存(Cache)
现代 CPU 通常还包含高速缓存,它是位于 CPU 和主存之间的一种高速存储器,用于存储 CPU 近期可能会频繁访问的数据和指令。高速缓存的存在大大提高了 CPU 访问数据的速度,减少了 CPU 等待数据从主存传输的时间,从而提高了整个计算机系统的性能.

