中央处理器

历史

在现今的CPU出现之前，如同ENIAC之类的计算机在执行不同程序时，必须经过一番线路调整才能启动。由于它们的线路必须被重设才能执行不同的程序，这些机器通常称为“固定程序计算机”（fixed-program computer）。而由于CPU这个词指称为执行软件（计算机程序）的设备，那些最早与储存程序型计算机一同登场的设备也可以被称为CPU。
储存程序型计算机的主意早已体现在ENIAC的设计上，但最终还是被省略以期早日完成。在1945年6月30日，ENIAC完成之前，著名数学家冯·诺伊曼发表名为"关于EDVAC的报告草案"的论文。它揭述储存程序型计算机的计划将在1949年正式完成。EDVAC的目标是执行一定数量与种类的指令（或操作），这些指令结合产生出可以让EDVAC执行的有用程序。特别的是，为EDVAC而写的程序是储存在高速计算机内存中，而非由实体线路组合而成。这项设计克服了ENIAC的某些局限——即花费大量时间与精力重设线路以执行新程序。在冯·诺伊曼的设计下，EDVAC可以借由改变内存储存的内容，简单更换它执行的程序（软件）。
值得注意的是，尽管冯·诺伊曼由于设计了EDVAC，使得他在发展储存程序型计算机上的贡献最为显著，但其他早于他的研究员如康拉德·楚泽（Konard Zuse）也提出过类似的想法。另外早于EDVAC完成，利用哈佛架构制造的马克一号，也利用打孔纸带而非电子内存用作储存程序的概念。冯·诺伊曼架构与哈佛架构最主要的不同在于后者将CPU指令与资料分开存放与处置，而前者使用相同的内存位置。大多近代的CPU依照冯·诺伊曼架构设计，但哈佛架构一样常见。
身为数字设备，所有CPU处理不连续状态，因此需要一些转换与区分这些状态的基础组件。在市场接受晶体管前，继电器与真空管常用在这些用途上。虽然这些材料速度上远优于纯粹的机械构造，但是它们有许多不可靠的地方。例如以继电器建造直流时序逻辑回路需要额外的硬件以应付接触点跳动问题。而真空管不会有接触点跳动问题，但它们必须在启用前预热，也必须同时停止运作。通常当一根真空管坏了，CPU必须找出损坏组件以置换新管。因此早期的电子真空管式计算机快于电子继电器式计算机，但维修不便。类似EDVAC的真空管计算机每隔八小时便会损坏一次，而较慢较早期的马克一号却不太发生故障。但在最后，由于速度优势，真空管计算机主宰了当时的计算机世界，尽管它们需要较多的维护照顾。大多早期的同步CPU，其时钟频率低于近代的微电子设计（见下列对于时钟频率的讨论）。那时常见的时钟频率为100千赫兹到4百万赫兹，大大受限于内建切换设备的速度。

分立晶体管与集成电路中央处理器

由于许多科技厂家投入更小更可靠的电子设备，设计CPU变得越来越复杂。晶体管的面世便是第一个CPU的飞跃进步。1950到60年代的晶体管CPU不再以体积庞大、不可靠与易碎的开关组件（例如继电器与真空管）建造。借由这项改良，更复杂与可靠的CPU便被建造在一个或多个包含分立（离散）组件的印刷电路板上。
在此时期，将许多晶体管放置在拥挤空间中的方法大为普及。集成电路（IC）将大量的晶体管集中在一小块半导体片，或芯片（chip）上。刚开始只有非常基本、非特定用途的数字电路小型化到IC上（例如NOR逻辑闸）。以这些预装式IC为基础的CPU称为小规模集成电路（SSI）设备。SSI IC，例如设备在阿波罗导航计算机上的那些计算机，通常包含数十个晶体管。以SSI IC建构整个CPU需要数千个独立的芯片，但与之前的分立晶体管设计相比，依然省下很多空间与电力。肇因于微电子科技的进步，在IC上的晶体管数量越来越大，因此减少了建构一个完整CPU需要的独立IC数量。“中规模集成电路”（MSI）与“大规模集成电路”（LSI）将内含的晶体管数量增加到成百上万。
1964年IBM推出了System/360计算机架构，此架构让一系列速度与性能不同的IBM计算机可以运行相同的程序。此确实为一项创举，因为当时的计算机大多互不兼容，甚至同一家厂商制造的也是如此。为了实践此项创举，IBM提出了微程序概念，此概念依然广泛使用在现代CPU上。System/360架构由于太过成功，因此主宰了大型计算机数十年之久，并留下一系列使用相似架构，名为IBM zSeries的现代主机产品。同一年（1964），迪吉多（DEC）推出另一个深具影响力且瞄准科学与研究市场的计算机，名为PDP-8。DEC稍后推出非常有名的PDP-11，此产品原先计划以SSI IC构组，但在LSI技术成熟后改为LSI IC。与之前SSI和MSI的祖先相比，PDP-11的第一个LSI产品包含了一个只用了4个LSI IC的CPU。
晶体管计算机有许多前一代产品没有的优点。除了可靠度与低耗电量之外，由于晶体管的状态转换时间比继电器和真空管短得多，CPU也就拥有更快的速度。得益于可靠度的提升和晶体管转换器切换时间的缩短，CPU的时钟频率在此时期达到十几百万赫兹。另外，由于分立晶体管与IC CPU的使用量大增，新的高性能设计，例如SIMD（单指令多数据）、向量处理机开始出现。这些早期的实验性设计，刺激了之后超级计算机（例如克雷公司）的崛起。

中央处理器操作原理

CPU的主要运作原理，不论其外观，都是执行储存于被称为程序里的一系列指令。在此讨论的是遵循普遍的冯·诺伊曼结构（von Neumann architecture）设计的设备。程序以一系列数字储存在计算机存储器中。差不多所有的冯·诺伊曼CPU的运作原理可分为四个阶段：提取、解码、执行和写回。
第一阶段，提取，从程序内存中检索指令（为数值或一系列数值）。由程序计数器指定程序存储器的位置，程序计数器保存供识别当前程序位置的数值。换言之，程序计数器记录了CPU在当前程序里的踪迹。提取指令之后，PC根据指令式长度增加存储器单元。指令的提取常常必须从相对较慢的存储器查找，导致CPU等候指令的送入。这个问题主要被论及在现代处理器的缓存和管线化架构（见下）。
CPU根据从存储器提取到的指令来决定其执行行为。在解码阶段，指令被拆解为有意义的片断。根据CPU的指令集架构（ISA）定义将数值解译为指令。一部分的指令数值为运算码，其指示要进行哪些运算。其它的数值通常供给指令必要的信息，诸如一个加法运算的运算目标。这样的运算目标也许提供一个常数值（即立即值），或是一个空间的定址值：寄存器或存储器地址，以定址模式决定。在旧的设计中，CPU里的指令解码部分是无法改变的硬体设备。不过在众多抽象且复杂的CPU和ISA中，一个微程序时常用来帮助转换指令为各种形态的讯号。这些微程序在已成品的CPU中往往可以重写，方便变更解码指令。
在提取和解码阶段之后，接着进入执行阶段。该阶段中，连接到各种能够进行所需运算的CPU部件。例如，要求一个加法运算，算术逻辑单元将会连接到一组输入和一组输出。输入提供了要相加的数值，而且在输出将含有总和结果。ALU内含电路系统，以于输出端完成简单的普通运算和逻辑运算（比如加法和位操作）。如果加法运算产生一个对该CPU处理而言过大的结果，在标志寄存器里，溢出标志可能会被设置（参见以下的数值精度探讨）。
最终阶段，写回，以一定格式将执行阶段的结果简单的写回。运算结果经常被写进CPU内部的寄存器，以供随后指令快速访问。在其它案例中，运算结果可能写进速度较慢，如容量较大且较便宜的主存。某些类型的指令会操作程序计数器，而不直接产生结果数据。这些一般称作“跳转”并在程序中带来循环行为、条件性执行（透过条件跳转）和函数。许多指令也会改变标志寄存器的状态比特。这些标志可用来影响程序行为，缘由于它们时常显出各种运算结果。例如，以一个“比较”指令判断两个值的大小，根据比较结果在标志寄存器上设置一个数值。这个标志可借由随后的跳转指令来决定程序动向。
在执行指令并写回结果数据之后，程序计数器的值会递增，反复整个过程，下一个指令周期正常的提取下一个顺序指令。如果完成的是跳转指令，程序计数器将会修改成跳转到的指令地址，且程序继续正常执行。许多复杂的CPU可以一次提取多个指令、解码，并且同时执行。这个部分一般涉及“经典RISC管线”，那些实际上是在众多使用简单CPU的电子设备中快速普及（常称为微控制器）。

整数范围

CPU数字表示方法是一个设计上的选择，这个选择影响了设备的工作方式。一些早期的数字计算机内部使用电气模型来表示通用的十进制（基于10进位）记数系统数字。还有一些罕见的计算机使用三进制表示数字。几乎所有的现代的CPU使用二进制系统来表示数字，这样数字可以用具有两个值的物理量来表示，例如高低电平等等。
与数表示相关的是一个CPU可以表示的数的大小和精度，在二进制CPU情形下，一个位（bit）指的是CPU处理的数中的一个有意义的位，CPU用来表示数的位数量常常被称作"字长", "位宽", "数据通路宽度"，或者当严格地涉及到整数（与此相对的是浮点数）时，称作"整数精度"，该数量因体系结构而异，且常常在完全相同的CPU的不同部件中也有所不同。例如：一个8位的CPU可处理在八个二进制数字（每个数字具有两个可能的取值，0或1）表示范围内的数，也就是说，2⁸或256个离散的数值。  实际上，整数精度在CPU可执行的软件所能利用的整数取值范围上设置了硬件限制。
整数精度也可影响到CPU可寻址（定址）的内存数量。譬如，如果二进制的CPU使用32位来表示内存地址，而每一个内存地址代表一个八比特组，CPU可定位的容量便是2³²个比特组或4GB。以上是简单描述的CPU地址空间，通常实际的CPU设计使用更为复杂的寻址方法，例如为了以同样的整数精度寻址更多的内存而使用分页技术。
更高的整数精度需要更多线路以支持更多的数字比特，也因此结构更复杂、更巨大、更花费能源，也通常更昂贵。因此尽管市面上有许多更高精准度的CPU（如16，32，64甚至128位），但依然可见应用软件执行在4或8位的微控制器上。越简单的微控制器通常较便宜，花费较少能源，也因此产生较少热量。这些都是设计电子设备的主要考量。然而，在专业级的应用上，额外的精度给予的效益（大多是给予额外的地址空间）通常显著影响它们的设计。为了同时得到高与低位宽度的优点，许多CPU依照不同功用将各部分设计成不一样的位宽度。例如IBM System/370使用一个原为32位的CPU，但它在其浮点单元使用了128位精度，以得到更佳的精确度与浮点数的表示范围。许多后来的CPU设计使用类似的混合位宽，尤其当处理器设计为通用用途，因而需要合理的整数与浮点数运算能力时。

时钟频率

内频＝外频×倍频。
大部分的CPU，甚至大部分的时序逻辑设备，本质上都是同步的。也就是说，它们被设计和使用的前题是假设都在同一个同步信号中工作。这个信号，就是众所周知的时脉讯号，通常是由一个周期性的方波（构成）。通过计算电信号在CPU众多不同电路中的分支中循环所需要的最大时间，设计者们可为时脉讯号选择一个适合的周期。
该周期必须比信号在延迟最大的情况下移动或者传播所需的时间更长。设计整个CPU在时钟信号的上升沿和下降沿附近移动数据是可能的。无论是在设计还是组件的维度看来，均对简化CPU有显著的优点。同时，它也存在CPU必须等候回应较慢组件的缺点。此限制已透过多种增加CPU并行运算的方法下被大幅的补偿了。（见下文）
无论如何，结构上的改良无法解决所有同步CPU的弊病。比方说，时脉讯号易受其它的电子信号影响。在逐渐复杂的CPU中，越来越高的时钟频率使其更难与整个单元的时脉讯号同步。是故近代的CPU倾向发展多个相同的时脉讯号，以避免单一信号的延迟使得整个CPU失灵。另一个主要的问题是，时脉讯号的增加亦使得CPU产生的热能增加。持续变动的时钟频率使得许多组件切换（Switch）而不论它们是否处于运作状态。一般来说，一个处于切换状态的组件比处于静止状态还要耗费更多的能源。因此，时钟频率的增加使得CPU需要更有效率的冷却方案。
其中一个处理切换不必要组件的方法称为时脉闸控，即关闭对不必要组件的时钟频率（有效的禁止组件）。但此法被认为太难实行而不见其低耗能通用性。另一个对全程时钟信号的方法是同时移除时钟信号。当移除全程时钟信号;使得设计的程序更加复杂时，异步（或无时脉）设计使其在能源消耗与产生热能的维度上更有优势。罕见的是，所有的CPU建造在没有利用全程时钟信号的状况。两个值得注意的示例是ARM（"Advanced RISC Machine"）顺从AMULET以及MIPS R3000兼容MiniMIPS。与其完全移除时脉讯号，部分CPU的设计允许一定比例的设备不同步，比方说使用不同步算术逻辑单元连接超标量管线以达成一部分的算术性能增进。在不将时脉讯号完全移除的情况下，不同步的设计可使其表现出比同步计数器更少的数学运算。因此，结合了不同步设计极佳的能源耗损量及热能产生率，使它更适合在嵌入式计算机上运作。.

数据并行

上面提及过的处理器都是一些常量仪器，而针对向量处理的CPU是较不常见的类型，但它的重要性却越来越高。事实上，在计算机计算上，向量处理是很常见的。顾名思义，向量处理器能在一个命令周期（one instruction）处理多项数据，这有别于只能在一个命令周期内处理单一数据的常量处理器。这两种不同处理数据的方法，普遍分别称为‘单指令，多数据’（SIMD）及‘单指令，单数据’（SISD）。向量处理器最大的优点就是能够在同一个命令周期中对不同的工作进行优化，例如：求一大堆数据的总和及向量的数量积，更典型的例子就是多媒体应用程序（画像、影像、及声音）与及众多不同总类的科学及工程上的工作。当常量处理器只能针对一组数据于单一命令周期内完全执行提取、解码、执行和写回四个阶段的同时，向量处理器已能对较大型的数据如相同时间内执行相同动作。当然，这假设了这个应用程序于单一命令周期内对处理器进行多次要求。
大多数早期的向量处理器，例如Cray-1，大多都只会用于和科研及密码学有关的应用程序。但是，随着多媒体向数字媒体转移，对于能做到‘单指令，多数据’的普通用途处理器需求大增。于是，在浮点计算器普及化不久，拥有‘单指令，多数据’功能的普通用途处理器便面世了。有些早期的‘单指令，多数据’规格，如英特尔的MMX，只能作整数运算。因为大多数要求‘单指令，多数据’的应用程序都要处理浮点数字，所以这个规格对软件开发者无疑是一个主要障碍。幸好，这些早期的设计慢慢地被改进和重新设计为现时普遍的‘单指令，多数据’新规格，AMD公司也推出了第一个真正能执行浮点SIMD指令集3DNow!，在每个时脉周期可得到4个单精确度浮点数结果，是当时一般x87浮点处理器的4倍。新规格通常都于一ISA关连着。近年，一些值得注意的例子一定要数英特尔的SSE和PowerPC相关的AltiVec（亦称为VMX）。

多核心

多核心中央处理器是在中央处理器芯片或封装中包含多个处理器核心，以偶数为核心数目较为常见，一般共享二级缓存。现今使用双核心和四核心以上处理器的个人计算机已相当普遍。另也有少数三核心、六核心、八核心、十核心处理器等。
第一颗双核心处理器为IBM POWER4处理器，2012年IBM发布了最新8核心的POWER 7＋处理器，拥有80MB L3缓存/芯片。

性能

CPU的性能和速度取决于时钟频率（一般以赫兹或千兆赫兹计算，即hz与Ghz）和每周期可处理的指令（IPC），两者合并起来就是每秒可处理的指令（IPS）。
IPS值代表了CPU在几种人工指令序列下“高峰期”的运行率，指示和应用。而现实中CPU组成的混合指令和应用，可能需要比IPS值显示的，用更长的时间来完成。而内存层次结构的性能也大大影响中央处理器的性能。通常工程师便用各种已标准化的测试去测试CPU的性能，已标准化的测试通常被称为“基准”（Benchmarks）。如SPECint，此软仵试图模拟现实中的环境。测量各常用的应用程序，试图得出现实中CPU的绩效。
提高计算机的处理性能，亦使用多核心处理器。原理基本上是一个集成电路插入两个以上的个别处理器（意义上称为核心）。在理想的情况下，双核心处理器性能将是宏内核处理器的两倍。然而，在现实中，因不完善的软件算法，多核心处理器性能增益远远低于理论，增益只有50％左右。但增加核心数量的处理器，依然可增加一台计算机可以处理的工作量。这意味着该处理器可以处理大量的不同步的指令和事件，可分担第一核心不堪重负的工作。有时，第二核心将和相邻核心同时处理相同的任务，以防止崩溃。

实际应用

中央处理器大规模应用在个人计算机上，现今计算机可进入家庭。全因集成电路的发展，令PC在大小、性能以及价位等多个方面均有长足的进步。现今中央处理器价钱平宜，用户可自行组装个人计算机。主板等主要计算机组件，均配合中央处理器设计。不同类型的中央处理器安装到主板上不同类型的CPU插槽中（如英特尔的LGA 1151、AMD的Socket AM4），令中央处理器变得更省电，温度更低。大多数IBM PC兼容机（Pentium以后被称为“标准PC”（Standard PC））使用x86架构的处理器，他们主要由英特尔和超微两家公司生产，此外威盛电子也有参与中央处理器的生产。但与IBM PC兼容机不同，在2006年之前苹果计算机所使用的处理器一直是IBM PowerPC RISC，之后的苹果计算机转而采用英特尔的处理器，以及EFI固件。可见中央处理器在现代计算机的重要地位。