cpu是怎样工作的,为啥只由0和1组成就可以做任何计算

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了cpu是怎样工作的,为啥只由0和1组成就可以做任何计算相关的知识,希望对你有一定的参考价值。

为什么0和1可以组成任何画面在显示器上显示,怎么实现的呢?为什么0和1可以协同工作?

cpu的工作原理是它的功能主要是解释计算机指令以及处理计算机软件中的数据。只由0和1组成就可以做任何计算时因为采用的二进制。
中央处理器(CPU,Central Processing Unit)是一块超大规模的集成电路,是一台计算机的运算核心(Core)和控制核心( Control Unit)。它的功能主要是解释计算机指令以及处理计算机软件中的数据。中央处理器主要包括运算器(算术逻辑运算单元,ALU,Arithmetic Logic Unit)和高速缓冲存储器(Cache)及实现它们之间联系的数据(Data)、控制及状态的总线(Bus)。它与内部存储器(Memory)和输入/输出(I/O)设备合称为电子计算机三大核心部件。
CPU从存储器或高速缓冲存储器中取出指令,放入指令寄存器,并对指令译码。它把指令分解成一系列的微操作,然后发出各种控制命令,执行微操作系列,从而完成一条指令的执行。指令是计算机规定执行操作的类型和操作数的基本命令。指令是由一个字节或者多个字节组成,其中包括操作码字段、一个或多个有关操作数地址的字段以及一些表征机器状态的状态字以及特征码。有的指令中也直接包含操作数本身。
二进制是计算技术中广泛采用的一种数制。二进制数据是用0和1两个数码来表示的数。它的基数为2,进位规则是“逢二进一”,借位规则是“借一当二”,由18世纪德国数理哲学大师莱布尼兹发现。当前的计算机系统使用的基本上是二进制系统,数据在计算机中主要是以补码的形式存储的。计算机中的二进制则是一个非常微小的开关,用“开”来表示1,“关”来表示0。
20世纪被称作第三次科技革命的重要标志之一的计算机的发明与应用,因为数字计算机只能识别和处理由‘0’.‘1’符号串组成的代码。其运算模式正是二进制。19世纪爱尔兰逻辑学家乔治布尔对逻辑命题的思考过程转化为对符号"0\'\'.\'\'1\'\'的某种代数演算,二进制是逢2进位的进位制。0、1是基本算符。因为它只使用0、1两个数字符号,非常简单方便,易于用电子方式实现。
参考技术A PC用的计算方式主要采2进制!

下面是2进制的解释

首先,要想简单的明白,就先看看十进制吧,我们平时用的这些计数法就叫十进制计数法,为什么叫十进制呢,明摆着,够十了就要进位,拿11来说,有两位是吧,右边数过去,第一位是个位,在个位是这个1就只代表1 ,是吧。好,看过去,第二位是十位,这位上的一个1就不是代表1了,是吧,他代表10,和个位的1相加这个数的值就是十一了。上面的这些够简单了吧。

从上面的这些出发,就可看看进位计数法,所有这些几进制几进制核心的灵魂就是进位计数,说白了就是够这个值我就不用这个位作标记了,我进一位,还是说10进制,逢10进一,就是说值够10了我就进位,不在这个位记了,所以可以看到,我位记数只有0~9的10个数字,不会有个字符代表10,因为我用10位上的1来代表了,那当然10位的2就代表二十咯,十位记到10了,又要进位了,到百位……

二进制就是类似的这样,但它是够2进1了,不记到10了(电脑它笨,呵呵,其实真正是因为二进制在物理上容易实现),那也是说二进制不会有2这个符号出现,因为够二他也进位了,不需要2。那好,还是那个“11”,第一位他还是一(因为未够2嘛),但那第二位那个1就是10了,因为它是够2就进位了,就是怎样?这个1代表1个二而不是1个十,好,那是1个二,加上第一位的1个一,值是多少?是三咯。很好,那2怎样表示,2就是1+1吧,1+1要进位,第一位变成了0,第二位变成了1,那就是10哦。

原在我返过来就说说上面那个进位计数,他有什么特点呢?拿10进制来说。个位的单位是一,一即是10^1(代表10的零次方),十位的单位是十,即是10^1,百位单位是百,即是10^3,规律就出来了,那是10的几次方来的,123这个10进制数,他的值是多少,是1×10^2+2×10^1+3×10^0,二进制也类似,从右到左第一位的单位或说基数就是2的几次方,就是一、二、四、八……

其实你可能明白那个什么逢几进一了,就是不明那些公式是搞啥子的吧?好,我试着说几个简单点的公式,二进制化十进制:公式是怎样?举例101个二进制数,从右往左来转化过程就是这样:
1×2^0+0×2^1+1×2^3,计出是多少,1×1+0×2+1×4=5吧,嗯,为什么这样就行了呢?你再看看那公式,有了个2,这是啥东东,这在2进制中是不会有啊,对,我们在这一步就把的基数化成了10进制对应的值,最后的各个位都化成了10进制的形式,相加出不就是10进制了?
10进制化二进制呢:除以2取余数倒着写.这样说吧,一个值中够2就要进位了,是吧,比如7,7就代表有7个1,是吧,7个1中就有3个2和1个1吧,那些2都是要进位的,但最后1个1够2只好留在第一位,7除以2余1吧,这个1就是第一位的,再来看,第二位上进了3个2吧,但第一位上不能超过2的啊,好,我再除,又只剩一个,且进1,刚好都不够2了,变成了111.

这些数制的转换慢慢想想,自己在纸上试下就会明白了,其实不明白没事的,真的,我觉得这些不是很重要的,大概了解一下进位制,明白原理就行了.
参考技术B 中央处理器(CPU,Central Processing Unit)是一块超大规模的集成电路,是一台计算机的运算核心(Core)和控制核心( Control Unit)。它的功能主要是解释计算机指令以及处理计算机软件中的数据。中央处理器主要包括运算器(算术逻辑运算单元,ALU,Arithmetic Logic Unit)和高速缓冲存储器(Cache)及实现它们之间联系的数据(Data)、控制及状态的总线(Bus)。它与内部存储器(Memory)和输入/输出(I/O)设备合称为电子计算机三大核心部件。 参考技术C 建议去买个关于冯氏定理的书看看!
二进制可不是简单的1和0本回答被提问者采纳
参考技术D 这得从计算机发明开始

读《程序是怎样跑起来的》第八章有感

这一章主要是讲的源文件和可执行文件(EXE文件),计算机只能运行本地代码,本地代码是CPU可以解析和运行的程序,而并不能直接解析和运行源代码,这是因为作为计算机大脑的CPU只能解释已经转换成本地代码的程序内容。

CPU来说母语就是机器语言,而转换成机器语言的程序就是本地代码,用任何语言编写的源代码,最后都要翻译成本地代码。否则CPU就不能理解了,我感觉CPU跟我还蛮像的,你要是跟我说方言或者其他国家的语言我也听不懂,只能听懂汉语。哈哈,开个小玩笑,也就是说,即使是用不同编程语言编写的代码 。转变成本地代码后,也都变成用同一种语言来表示了。

接着作者给出两张图片,一个是用记事本打开EXE文件后的本地代码,另一个是用数值罗列的本地代码,真是看不懂,怪不得要用编程语言呢。接着作者解释了什么叫编译器,编译器就是将高级编程语言编写的源代码转换成本地代码的程序。但每种编程语言都需要专用的编译器,根据CPU类型的不同,本地代码的类型也不同。因此,编译器不仅和编程语言的种类有关,和CPU的种类和运行环境也是有关的。

后面讲了库文件和DLL文件以及如何到倒入库,书上作者讲的很详细了,就不一 一赘述了,最后作者提出的七个问答题很有内容,不过有些读一遍还是不太理解需要多读几遍,总的来讲,这一章的内容比较多,也比较难懂,看了一遍感觉还是很懵,感觉自己懂的真是太少了,以前觉得学好书上的知识就好了,感觉自己真傻!!

以上是关于cpu是怎样工作的,为啥只由0和1组成就可以做任何计算的主要内容,如果未能解决你的问题,请参考以下文章

2023-01-06:给定一个只由小写字母组成的字符串str,长度为N, 给定一个只由01组成的数组arr,长度为N, arr[i] == 0表示str中i位置的字符不许修改, arr[i] ==

简述CPU的工作原理

2021-12-25:给定一个只由0和1组成的字符串S,假设下标从1开始,规定i位置的字符价值V[i]计算方式如下

为啥编程语言不能通用和统一呢? 只保留一种编程语言,可以做任何事

001.Python基础

计算机基本组成于工作模型 -二进制-分时复用操作系统-并发并行-内存-硬盘-高速缓存-BIOS