
生产| CSDN(ID: CSDNnews)
以下是翻译:
“工具通常比通常用手操作的机器简单,并且机器通常由动物或蒸汽驱动. ”
-查尔斯·巴贝奇
计算机是一台主要由电力驱动的机器,但是其灵活性和可编程性有助于实现其简单性.
CPU是计算机的和/或大脑. 负责执行提供给他们的指令. 它的主要任务是执行算术和逻辑运算并协调指令. 在深入探讨本文的主要部分之前,让我们看一下CPU的主要组件及其作用.
CPU的两个主要组成部分
控制单元— CU
控制单元(CU)是CPU的一部分,有助于协调指令的执行. 它告诉CPU该怎么做. 它的主要职责是根据说明帮助激活连接CPU和计算机其他不同组件(包括ALU)的线路. 控制单元是CPU接收处理指令的第一个组件.
控制单元有两种类型:
硬连线控制单元是一种硬件,需要在硬件上进行更改以更改其工作模式,并且可以对微型可编程控制单元进行编程以更改其工作模式. 硬连线控制单元处理指令的速度更快,而微可编程控制单元则更灵活.
算术逻辑单元— ALU
顾名思义,算术逻辑单元(ALU)负责所有算术和逻辑运算. 算术逻辑单元执行诸如加法和减法的操作. 算术逻辑单元由执行这些操作的逻辑电路或逻辑门组成.
大多数逻辑门接受两个输入并产生一个输出.
以下是一个半加法器电路的示例,该电路接受两个输入并输出结果. 这里的A和B是输入,S是输出,C是进位.


半加法器电路图
存储寄存器和内存
CPU的主要任务是执行提供给它的指令. 在大多数情况下,为了处理这些指令,它需要数据. 一些数据是中间数据,一些是输入的,而另一些是输出的. 这些数据与指令一起存储在以下存储器中:
注册
寄存器是一组可以存储数据的小地方. 寄存器是锁存器的组合. 锁存器也称为触发器,是存储1位信息的逻辑门的组合.
锁存器具有输入线,写和输入线以及输出线. 我们可以启用写入行来更改存储的数据. 禁用写线时,输出保持不变.

SR锁存器由一对交叉耦合的NOR门(NORGates)组成.
CPU通过寄存器存储输出数据. 因为它是中间数据,所以它们以较低的速率发送到主存储器(RAM). 这些数据被发送到通过总线连接的其他寄存器. 寄存器可以存储指令,输出数据cpu指的是什么,存储地址或任何类型的数据.
内存(RAM)
RAM随机存取存储器是寄存器的集合,这些寄存器以优化的方式排列和压缩在一起以存储更多数据. 随机存取存储器(RAM)易失,当我们关闭电源时,其存储的数据将丢失. 由于RAM是用于读取/写入数据的寄存器的集合,因此RAM可用于存储8位地址输入,用于存储实际数据的数据输入以及用于存储与锁存器激活码类似的最后一次读写.
什么是命令
The
指令是计算机可以执行的最小粒度操作. CPU可以处理各种类型的指令

命令类型包括:
通过以下方式向计算机提供指令: 直接以汇编语言提供,或由编译器生成,或以某些高级语言解释提供.
这些指令被硬连线到CPU内部. 算术和逻辑运算指令包含在ALU(算术逻辑单元)中,而程序控制指令则由CU(控制单元)管理.
通常在一个时钟周期内,一台计算机可以执行一条指令,但是现代计算机可以同时执行多条指令.
计算机可以执行的一组指令称为指令集.
CPU时钟
时钟周期
计算机的速度由其时钟周期来衡量. 它是指计算机每秒工作的时钟周期数. 一个时钟周期非常小,大约为250 * 10 ^(-12)秒. 每秒时钟周期数越多,处理器速度就越快.
CPU时钟速率的度量单位是GHz(千兆赫). 1Ghz等于10⁹Hz(赫兹). 一赫兹表示一秒钟. 因此,1 GHz意味着每秒10个时钟周期.
时钟周期越短,CPU可以执行的指令越多. 时钟周期等于时钟频率的倒数,CPU时间=时钟周期数/时钟频率
这意味着,为了改善(减少)CPU时间,我们可以通过增加时钟频率或优化我们提供给CPU的指令来减少指令所需的时钟周期数. 某些处理器可以增加时钟频率,但是由于这是物理变化,因此可能会发生过热甚至冒烟/起火的情况.
如何执行指令
指令按顺序存储在随机存取存储器(RAM)中. 对于假定的CPU指令,它由操作码(OP代码)和存储器或寄存器地址组成.
控制单元(CU)中有两个寄存器: 用于加载指令操作码的指令寄存器(IR)和用于加载当前正在执行的指令地址的指令地址寄存器. CPU中还有其他寄存器,用于存储存储在指令后4位地址中的值.
让我们以一组说明来添加两个数字为例. 以下是这些说明及其说明:

第一步-LOAD_A 8:
该指令最初存储在RAM中,例如,指令<1100 1000>. 前4位是操作码. 这决定了该指令的作用. 然后将指令读入控制单元的指令寄存器(IR). 该指令被解码为load_A,这意味着它需要将数据加载到地址1000中cpu指的是什么,该地址是存储在寄存器A中的指令的后4位.
步骤2-LOAD_B 2:
与上述类似,它将内存地址2(0010)中的数据加载到CPU的寄存器B中.
步骤3-ADD B A
下一条指令是将这两个数字相加. 在这里,控制单元(CU)告诉算术逻辑单元(ALU)执行加法运算并将结果保存回寄存器A.
步骤4-STORE_A 23
将结果保存回寄存器A.
这是一组非常简单的指令,用于实现两个数字的加法.
现在,我们已经成功地获得了两个数字的和!
公共汽车
CPU,寄存器,存储器和IO设备之间的所有数据均通过总线传输. 为了将两个数字相加得到的和保存起来,CPU将存储器地址放入地址总线,将结果(和)放入数据总线,然后在控制总线中启用正确的信号. 这样,数据就可以在总线的帮助下保存到内存中.

计算机系统总线
缓存

CPU还具有一种将指令预取到其缓存中的机制. 我们知道处理器可以在一秒钟内完成数百万条指令. 这意味着从内存(RAM)提取指令要比执行指令花费更多的时间. 因此,CPU会将一些指令和数据预取到其缓存中,以加快执行速度.
如果缓存中的数据与操作内存中的数据不同,则将数据标记为脏位.
指令流水线
现代CPU在指令执行中使用指令流水线技术来实现指令提取(FI),解码(DI)和执行(EI)的并行化. 当一条指令完成“获取”并输入“解码”时,下一条指令可以是“获取”,从而提高了指令的执行效率.

指令流水线技术
但是,当一条指令依赖于另一条指令时,此技术将引起问题. 因此,指令流水线技术只能允许处理器以不同的顺序执行不依赖于彼此的指令.
多核计算机
它基本上具有不同的CPU,但是有一些共享资源,例如缓存.
性能
CPU性能取决于其执行时间. 性能= 1 /执行时间
假设程序需要20毫秒才能执行. CPU性能为1/20 = 0.05ms. 相对性能=执行时间1 /执行时间2
影响CPU性能的因素是指令执行时间和CPU时钟速度(时钟频率). 因此,为了提高程序的性能,我们必须提高CPU时钟速度(时钟频率)或减少程序中的指令数量. 处理器的速度有限,现代多核计算机每秒可支持数百万条指令. 但是,如果我们编写的程序中的指令过多,则会导致整体性能下降.
Big O表示法计算方法可用于确定在输入后如何影响CPU性能.
为了尽可能提高CPU的速度,已经在CPU中进行了许多优化工作. 在编写任何程序时,我们都需要考虑如何尽可能减少提供给CPU的指令数量,以提高计算机程序的性能.
原文:
本文来自电脑杂谈,转载请注明本文网址:
http://www.pc-fly.com/a/jisuanjixue/article-268552-1.html
哈哈
新歌新歌
让这帮家伙丢丢丑