二进制是由Gottfried Leibniz发明的以 2 为底的数字系统,是四种数字系统之一。
四种数字系统分别是:二进制、八进制、十进制、十六进制。
计算机系统中的所有数据都由二进制信息组成,二进制只有 2 个值:0 和 1。
在布尔逻辑中,单个二进制数字只能表示 True (1) 或 False (0) ,但是,可以使用多个二进制数字来表示大数并执行复杂的功能,任何整数都可以用二进制表示。
在数字数据存储器、存储、处理和通信中,0 和 1 值有时分别称为“低”和“高”。
二进制也可用于描述已编译的软件程序,一旦程序被编译,它就会包含称为“机器代码”的二进制数据,可以由计算机的CPU执行。
上面我们提到二进制1和0表示高低电平,在晶体管中,“0”代表没有电流流动,“1”代表允许电流流动。
晶体管是控制电流的微型开关。
通过这种方式,数据才得以传输。
在计算的早期,将数据输入计算机的唯一方法是轻按开关或输入打孔卡或打孔纸带。
二进制数示例
二进制中没有 2、3、4、5、6、7、8 或 9.
每个二进制数字都简称为bit,也叫位,一位只能用于表示 2 个不同的值:0 和 1。
bit是计算机上数据的最小单位,其他单位还有:Byte、kb、mb、gb、tb等,它们的换算方式如下:
当然了,还有更大的单位,比如:PB、ZB、EB、YB……
阅读二进制其实就是将二进制转化为我们可阅读的十进制的过程。
二进制中的数字 0 到 15:
由此看出二进制的权重是 2 的幂,而不是 10 的幂。
举个栗子:
我们二进制转十进制的时候,一般都是从右往左看,第一个数字是0,那么算出来就是0.
第二个数字是1,那么算出来就是2.
以此类推,最后二进制数11001010转为十进制就是0+2+0+8+0+32+64+128=234
这里瑞哥教大家一个非常简单的方法:
举个栗子,比如现在有个十进制数:200
意思就是小于200的最大的2的次方的数,我们快速的在脑海中回忆一下“2,4,8,16,32,64,128,258”,这个时候就确定这个数是128
首先 200 - 128 = 72
72下一个最大的2的次幂数就是 64
72 - 64 = 8
答案就出来了:200 = 128 + 64 + 8 = 2^7+ 2^6+ 2^3
也就是第4个、第7个、第8个为1,其他都为0.
我用图来演示一下:
首先记住这个换算:
200可以由128、64、8组成:
128、64、8所在位置为1,其他都为0:
这样的是不是很快就能算出来十进制数200转换为二级制数就是11001000.
这里是演示,所以步骤我列举的非常详细,但是这种方法是绝大数人使用的方法,一旦你掌握了,口算速度会非常快,大家可以刻意的去练习一下。
计算机中一切都可以用二进制来表示,不管是图片、指令、文件还是视频都是可以用二进制数来表示,只是这些二进制数会根据类型进行编码,比如图片通常被编码成png、jpg等格式,指令就比较多了,比如“.bat”、“.py”、".sh"等,文件比如word、ppt、pdf等,视频比如mp4等。
二进制0和1,两个简简单单、普普通通的数字构成了复杂的计算机系统,对于人类文明的进步可谓是不可衡量的,那么本文主要介绍了什么是二进制、二进制如何工作、二进制的例子,以及二进制和十进制互换算。