芯片 如何运算的
发布网友
发布时间:2022-04-19 10:10
我来回答
共2个回答
热心网友
时间:2022-06-29 17:19
*处理器(CPU,Central Processing Unit)是一块超大规模的集成电路,是一台计算机的运算核心(Core)和控制核心( Control Unit)。它的功能主要是解释计算机指令以及处理计算机软件中的数据。
*处理器主要包括运算器(算术逻辑运算单元,ALU,ArithmeTIc Logic Unit)和高速缓冲存储器(Cache)及实现它们之间联系的数据(Data)、控制及状态的总线(Bus)。它与内部存储器(Memory)和输入/输出(I/O)设备合称为电子计算机三大核心部件。
CPU是在特别纯净的硅材料上制造的。一个CPU芯片包含上百万个精巧的晶体管。人们在一块指甲盖大小的硅片上,用化学的方法蚀刻或光刻出晶体管。因此,从这个意义上说,CPU正是由晶体管组合而成的。简单而言,晶体管就是微型电子开关,它们是构建CPU的基石,你可以把一个晶体管当作一个电灯开关,它们有个操作位,分别代表两种状态:ON(开)和OFF(关)。这一开一关就相当于晶体管的连通与断开,而这两种状态正好与二进制中的基础状态“0”和“1”对应!这样,计算机就具备了处理信息的能力。
其实,所有电子设备都有自己的电路和开关,电子在电路中流动或断开,完全由开关来控制,如果你将开关设置为OFF,电子将停止流动,如果你再将其设置为ON,电子又会继续流动。晶体管的这种ON与OFF的切换只由电子信号控制,我们可以将晶体管称之为二进制设备。
如果能够将任意数字准确的用算盘上的珠子的状态变化进行表示,并且能正确的读出算盘上珠子状态所表示的数字,那就具备了使用算盘进行计算的入门要求。那么接下类我们详细了解一下cpu晶体管为什么会计算。
cpu晶体管为什么会计算
CPU的计算方式像算盘,算盘是打上多一个,打下来少一个,晶体管的开关用1和0表示,以二进制的方法来计算和读取结果,算盘则是直接数,表达方式不同而已,但无论是算盘或cpu计算,都不能直接乘除,只能加减,乘以几就加几次,除以几就减几次。
感谢数学和数学家,数学让这个世界变得逻辑透明,数学家让我们明白这一切,cpu的逻辑单元依靠改变电平高低显示0和1两个状态,当几十个乃至几亿个逻辑单元并排,就能依靠读取电平状态得到很大的二进制数据1100010101…001010,这是计算的基础,对于简单数学1+1或者2+(-1),按照二进制进位计算就好,复杂计算怎么办12345*54321,化乘法为加法,化除法为减法,ok,那更复杂的函数计算呢,感谢傅立叶变换,任何周期函数都可以看作是正余弦函数的叠加,原理不在这里解释,反正记住因为各种数学工具,平方开方微分积分,数据都能换成加法计算,当然,算法不同也决定了效率不同,这个是后话了,回到问题,cpu就是这么在集成电路里面掰手指,然后自然而然的给了21世纪新的发展动力
理解这个问题,首先你要具备一定的数电知识,CPU是由晶体管组成的,利用晶体管可以很轻易的搭建与门,或门,非门,这一点毋庸置疑吧,然后利用这些逻辑们就可以组成各种触发器,这一点也不用多解释,数电的基础内容,然后利用触发器进一步组成移位寄存器等,到这里,你就可以轻易的组建一个加法器,减法器了,数字用0,1表示,对应到电路中就是高电平和低电平,至于乘法和除法,最基本的运算单元也是加减法,到了这里,具备了基本的四则运算,也就具备了信息处理能力,无非就是用一定的规则组成成不同的0和1,当你动手焊接出一个加法器的时候,你就彻底明白了。
计算是对人来说的,晶体管才不会知道什么叫计算,他们只有两种状态,高电平和低电平,也就是通常所说的0和1,晶体管通过不同的组合形成大的输入输出元件,这些元件再通过组合形成逻辑电路,这就说我们说的运算基础,逻辑电路再组合就形成运算电路,运算电路集成到一起形成CPU,再配合时钟,就是我们所说的计算!所以计算是对整个CPU来说的,不是单一的晶体管!
热心网友
时间:2022-06-29 17:19
简单的方法来说吧:芯片有很多脚,有的是输入的,有的是输出的。当你在输入的脚那边输入一串高低不等的电压,就是代表告诉芯片要做的计算(比如1+1),电压在芯片里通过各种类似于二极管三极管的东东,在输出的脚那里得到另一串高低电压,这些电压就代表了计算的结果(如刚才比如的结果2)。芯片就是用电路的物理结构代替了数学上的计算。把某种或某些计算方法用一个很复杂的电路整合到一小块芯片里。
再说个简单的例子:一个计算二进制的简单芯片,有四个脚,输入的两个叫in1,in2,输入的两个叫out1,out2。in1和in2代表输入两个数。高电压是1,低电压是0。out1,out2就可以代表00,01,10,11四个二进制数。在芯片里做一个电路,达到如下效果:当in1与in2为低电压时,out1与out2都输出低电压;当in1或in2中有一个是高电压,另一个是低电压时out1为低电压,out2为高电压;当in1和in2都是高电压时,out1为高电压,out2为低电压。这样就可以计算0+0=00,1+0=01,0+1=01,1+1=10的二进制计算了。