CPU是如何工作的

如题所述

工作原理
基本原理
CPU的主要运作原理,不论其外观,都是执行储存于被称为程式里的一系列指令。在此讨论的是遵循普遍的架构设计的装置。程式以一系列数字储存在电脑记忆体中。差不多所有的CPU的运作原理可分为四个阶段:提取(Fetch)、解码(Decode)、执行(Execute)和写回(Writeback)。
第一阶段,提取,从程式记忆体中检索指令(为数值或一系列数值)。由程式计数器(Program Counter)指定程式记忆体的位置,程式计数器保存供识别目前程式位置的数值。换言之,程式计数器记录了CPU在目前程式里的踪迹。 提取指令之后,程式计数器根据指令式长度增加记忆体单元。指令的提取常常必须从相对较慢的记忆体寻找,导致CPU等候指令的送入。这个问题主要被论及在现代处理器的快取和管线化架构(见下)。 CPU根据从记忆体提取到的指令来决定其执行行为。在解码阶段,指令被拆解为有意义的片断。根据CPU的指令集架构(ISA)定义将数值解译为指令。 一部分的指令数值为运算码(Opcode),其指示要进行哪些运算。其它的数值通常供给指令必要的资讯,诸如一个加法(Addition)运算的运算目标。这样的运算目标也许提供一个常数值(即立即值),或是一个空间的定址值:暂存器或记忆体位址,以定址模式决定。 在旧的设计中,CPU里的指令解码部分是无法改变的硬体装置。不过在众多抽象且复杂的CPU和指令集架构中,一个微程式时常用来帮助转换指令为各种形态的讯号。这些微程式在已成品的CPU中往往可以重写,方便变更解码指令。 在提取和解码阶段之后,接着进入执行阶段。该阶段中,连接到各种能够进行所需运算的CPU部件。 例如,要求一个加法运算,算数逻辑单元(ALU,Arithmetic Logic Unit)将会连接到一组输入和一组输出。输入提供了要相加的数值,而且在输出将含有总和结果。ALU内含电路系统,以于输出端完成简单的普通运算和逻辑运算(比如加法和位元运算)。如果加法运算产生一个对该CPU处理而言过大的结果,在标志暂存器里,运算溢出(Arithmetic Overflow)标志可能会被设置(参见以下的数值精度探讨)。 最终阶段,写回,以一定格式将执行阶段的结果简单的写回。运算结果经常被写进CPU内部的暂存器,以供随后指令快速存取。在其它案例中,运算结果可能写进速度较慢,但容量较大且较便宜的主记忆体。某些类型的指令会操作程式计数器,而不直接产生结果资料。这些一般称作“跳转”(Jumps)并在程式中带来循环行为、条件性执行(透过条件跳转)和函式。 许多指令也会改变标志暂存器的状态位元。这些标志可用来影响程式行为,缘由于它们时常显出各种运算结果。 例如,以一个“比较”指令判断两个值的大小,根据比较结果在标志暂存器上设置一个数值。这个标志可藉由随后的跳转指令来决定程式动向。 在执行指令并写回结果资料之后,程式计数器的值会递增,反覆整个过程,下一个指令周期正常的提取下一个顺序指令。如果完成的是跳转指令,程式计数器将会修改成跳转到的指令位址,且程式继续正常执行。许多复杂的CPU可以一次提取多个指令、解码,并且同时执行。这个部分一般涉及“经典RISC管线”,那些实际上是在众多使用简单CPU的电子装置中快速普及(常称为微控制(Microcontrollers))。
基本结构
CPU包括运算逻辑部件、寄存器部件和控制部件。CPU从存储器或高速缓冲存储器中取出指令,放入指令寄存器,并对指令译码。它把指令分解成一系列的微操作,然后发出各种控制命令,执行微操作系列,从而完成一条指令的执行。 指令是计算机规定执行操作的类型和操作数的基本命令。指令是由一个字节或者多个字节组成,其中包括操作码字段、一个或多个有关操作数地址的字段以及一些表征机器状态的状态字和特征码。有的指令中也直接包含操作数本身。 运算逻辑部件 运算逻辑部件,可以执行定点或浮点的算术运算操作、移位操作以及逻辑操作,也可执行地址的运算和转换。 寄存器部件 寄存器部件,包括通用寄存器、专用寄存器和控制寄存器。 32位CPU的寄存器
通用寄存器又可分定点数和浮点数两类,它们用来保存指令中的寄存器操作数和操作结果。 通用寄存器是中央处理器的重要组成部分,大多数指令都要访问到通用寄存器。通用寄存器的宽度决定计算机内部的数据通路宽度,其端口数目往往可影响内部操作的并行性。 专用寄存器是为了执行一些特殊操作所需用的寄存器。 控制寄存器通常用来指示机器执行的状态,或者保持某些指针,有处理状态寄存器、地址转换目录的基地址寄存器、特权状态寄存器、条件码寄存器、处理异常事故寄存器以及检错寄存器等。 有的时候,中央处理器中还有一些缓存,用来暂时存放一些数据指令,缓存越大,说明CPU的运算速度越快,目前市场上的中高端中央处理器都有2M左右的二级缓存。 控制部件 控制部件,主要负责对指令译码,并且发出为完成每条指令所要执行的各个操作的控制信号。 其结构有两种:一种是以微存储为核心的微程序控制方式;一种是以逻辑硬布线结构为主的控制方式。 微存储中保持微码,每一个微码对应于一个最基本的微操作,又称微指令;各条指令是由不同序列的微码组成,这种微码序列构成微程序。中央处理器在对指令译码以后,即发出一定时序的控制信号,按给定序列的顺序以微周期为节拍执行由这些微码确定的若干个微操作,即可完成某条指令的执行。 简单指令是由(3~5)个微操作组成,复杂指令则要由几十个微操作甚至几百个微操作组成。 逻辑硬布线控制器则完全是由随机逻辑组成。指令译码后,控制器通过不同的逻辑门的组合,发出不同序列的控制时序信号,直接去执行一条指令中的各个操作。 其 他 应用大型、小型和微型计算机的中央处理器的规模和实现方式很不相同,工作速度也变化较大。中央处理器可以由几块电路块甚至由整个机架组成。如果中央处理器的电路集成在一片或少数几片大规模集成电路芯片上,则称为微处理器(见微型机)。
温馨提示:内容为网友见解,仅供参考
第1个回答  2020-11-09

cpu是用来干嘛的,主要工作是什么
CPU的主要功能有四种,分别是顺序控制、操作控制、时间控制、数据加工。主要工作是把程序装入主存储器(简称主存)中,由CPU自动地完成从主存取指令和执行指令的任务。程序是由指令构成的序列,执行程序就是按指令序列逐条执行指令。1、顺序控制:这是指控制程序中指令的执行顺序。程序中的各指令之间是有严...

cpu工作的一般过程
CPU的一般工作过程包括取指、解码、执行和写回四个步骤。1. 取指(Fetch):CPU从存储器中获取指令。这一过程是通过程序计数器(Program Counter,简称PC)来实现的,程序计数器存储下一条要执行的指令的地址。CPU的控制单元负责从存储器中读取该地址的指令,并将其存放在指令寄存器(Instruction Register...

简述cpu的工作原理
CPU,即中央处理器,是计算机的“大脑”,它执行程序中的指令,处理数据,并控制计算机的其他组件。1. 取指令:CPU从内存中获取要执行的指令。这通常是通过程序计数器(也称为指令指针)来实现的,它存储了下一条要执行的指令的内存地址。2. 解码指令:一旦CPU获取了指令,它就会对其进行解码,以确定应...

CPU工作的五个阶段分别是什么?
中央处理器(CPU)工作都可以分为5个阶段:取指令、指令译码、执行指令、访存取数、结果写回。1、取指令阶段,取指令(Instruction Fetch,IF)阶段是将一条指令从主存中取到指令寄存器的过程。2.指令译码阶段,取出指令后,计算机立即进入指令译码(Instruction Decode,ID)阶段。在指令译码阶段,指令译码...

电脑CPU的工作原理
CPU的工作分为 5 个阶段:取指令阶段、指令译码阶段、执行指令阶段、访存取数和结果写回。1、取指令(IF,instruction fetch),即将一条指令从主存储器中取到指令寄存器的过程。2、指令译码阶段(ID,instruction decode),取出指令后,指令译码器按照预定的指令格式,对取回的指令进行拆分和解释,识别...

cpu主要负责什么工作
CPU主要负责执行计算机程序中的指令,处理数据,以及控制计算机的各种操作。一、执行计算机程序中的指令 CPU(Central Processing Unit,中央处理器)的核心任务是执行计算机程序中的指令。它从计算机的内存中读取指令,解码这些指令,然后执行它们。这些指令可能包括加法、减法、乘法、除法等基本算术运算,也可能...

cpu的原理是什么
它作为计算机的核心部件,通过以下步骤完成其工作:1. 指令获取:CPU通过控制总线从内存中获取指令,这些指令由操作码和操作数组成,指示CPU需要执行的具体操作。2. 指令解码:CPU将指令中的操作码解码为具体的操作,如加、减、乘等。3. 操作数获取:CPU从内存中获取指令所需的操作数,这些操作数用于...

cpu工作原理
CPU工作原理 CPU,即中央处理器,是计算机系统的核心部件,负责执行程序指令和处理数据。其工作原理主要包括以下几个关键步骤:1. 指令获取 CPU从内存或缓存中读取指令。这些指令是计算机程序的一部分,告诉CPU要执行的操作。2. 指令解码 读取的指令被分解并转化为CPU能够理解的微操作。这些微操作是执行指令...

cpu工作原理是什么
CPU工作原理是执行程序中的指令,实现数据的运算、传输和控制功能,并通过这些基本操作完成程序的执行,达到预设的目的。首先,CPU(中央处理器)是计算机的核心部件,负责执行程序中的指令。这些指令是预先编写好的,存储在计算机的内存中。当计算机开机后,CPU会从内存中读取指令,并按照指令的要求进行相应的...

CPU工作原理
“芯片的工作原理是将电路制造在半导体芯片表面上从而进行运算与处理的。晶体管有开和关两种状态,分别用1和0表示,多个晶体管能够产生多个1和0信号,这种信号被设定为特定的功能来处理这些字母和图形等。在加电后,芯片会产生一个启动指令,之后芯片就会开始启动,接着就会不断的被接受新的数据和指令来不断...

相似回答