怎样快速学会使用二进制(用的这么多年的二进制)

怎样快速学会使用二进制(用的这么多年的二进制)(1)

谁能书阁下

白首太玄经

大家都知道计算机是靠数字 0 和 1 的二进制进行存储和运算的。二进制的基数是2,逢二进一,退一当二

怎样快速学会使用二进制(用的这么多年的二进制)(2)

知道归知道,可没人好奇为什么偏偏是二进制?毕竟计算机是给人用的,非要两种进制来回折腾一下不是很反人类么

二进制里随便一个数字就是长长一串,根本看不懂。连程序员也是用编程语言,而不是直接用 0 和 1 跟机器交流。

直接在机器码上 debug 的 Jeff Dean 大神除外

怎样快速学会使用二进制(用的这么多年的二进制)(3)

我们有十个手指,十进制用起来如臂指使;一天 24 小时,一个小时 60 分钟,这些常用进制怎么都要更好理解吧

怎样快速学会使用二进制(用的这么多年的二进制)(4)

虽说有时候科普时直接就用“ 机器只听得懂 0 和 1 ”蒙混过关了,不过这也是人赋予的规则,有了合适的材料和逻辑也能改变。

其实最重要的原因,是计算机刚出现的时候,二进制最好整了。

二进制电路简单好实现,运算逻辑还能直接套用现成的布尔代数,省力省事。

计算机靠电路中的高低电平变化就能分别表示 0 和 1

怎样快速学会使用二进制(用的这么多年的二进制)(5)

这一整就一直整到了现在,几十年来二进制计算机越来越先进,各方面的硬件也逐渐完善。现在你手上的手机,花了大把钞票的显卡,女神的照片,最爱的游戏,靠的全是二进制。

可差友们知道么,在理论上二进制并不是最有效率的那个

怎样快速学会使用二进制(用的这么多年的二进制)(6)

也就是说,如果用的不是二进制,我们可能早个几年就过上现在的生活了,面前这块糟心屏幕可能没有刘海没有水滴也没有孔。

那为什么不用最有效率的那个!是嫌科技太发达了还是 GTA 6 等的不够苦?

怎样快速学会使用二进制(用的这么多年的二进制)(7)

倒不是那时候的科学家们偷了懒,也不是从理论上说,e 进制才是信息表达的最优进制

e 的大名叫自然常数,也叫欧拉数,是个数值大约是 2.71828 的无限不循环小数。高中数学提过,记不清的差友把它当成 π 一样的东西就好。

当 n 越来越大时,(1 1/n)n 的值越来越趋近 e

怎样快速学会使用二进制(用的这么多年的二进制)(8)

可能有差友更奇怪了,进制这种东西又不是量化的具体数字,怎么比啊?

曾经有古希腊哲学家问过万物的本源这个问题。对此,毕达哥拉斯的回答是 “ 万物皆数 ”,他认为一切都可以通过特定模型转化成数字

怎样快速学会使用二进制(用的这么多年的二进制)(9)

虽然晚了毕达哥拉斯几千年 , 但进制在计算机上的优劣问题同样可以量化成直观的数字。

进制表达信息的能力等于表达的信息量与消耗资源的比值

怎样快速学会使用二进制(用的这么多年的二进制)(10)

比如说我们要用二进制用 8 位数据来表达信息,那么每一位上都有 1 和 0 两种可能。

8 位就有 28 种不同的排列方式

怎样快速学会使用二进制(用的这么多年的二进制)(11)

也就是说,二进制在 8 位 数据上能够表达 256 种不同的信息内容

而为了表达这些数据每一位上都需要有 0 和 1 两种不同形式,8位数就需要消耗 2 × 8 = 16 个用来表达信息的元件

怎样快速学会使用二进制(用的这么多年的二进制)(12)

按照之前的量化公式,我们就可以得到二进制在 8 位数据上的效率是:

256 ÷ 16 = 16 。

当然,我们不可能一个个进制、位数算过来,估计很多差友都想到了,直接代数化就好了

怎样快速学会使用二进制(用的这么多年的二进制)(13)

假设我们要用 x 进制表达 n 位的数据信息,和之前二进制表达 8 位数据同理:

一共能表达 xn 种不同的信息内容,需要消耗 nx 个表达信息的元件。

x 进制的效率就是 xn / nx

怎样快速学会使用二进制(用的这么多年的二进制)(14)

虽然一堆未知数,其实和分数一个道理,分子不变的情况下,分母越小,得数就越大。

所以消耗的资源 ( nx ) 越小,这种进制的效率就越高

抽奖时分母越少,中奖概率也越高,可我从来只是分母

怎样快速学会使用二进制(用的这么多年的二进制)(15)

温馨提示:下方为推导过程,不感兴趣可直接略过看结果。

信息量 I = x^n

消耗的资源P(x)=nx

x进制的效率=x^n/nx

P(x)一定时,x^n最大

[P(x)/n]^n

ln{[P(x)/n]^n}

=[lnP(x)-lnn]n

=nlnP(x)-nlnn

lnP(x)-1-ln(n)=0

n=P(x)/e x=e

前面也提过, e 的值大概是 2.71828 左右,也就是 “ 2.71828 进制 ”是理论上最好的进制。

但是 2.71828 进制是个什么鬼???我数数手指还得掰折 0.28172 根手指

还是得找个整数,不然工业上可能没法实现了。。。因此和这个数更接近的 “ 三 ”应该是坠吼的

得到结论:数据表达上效率最高的是三进制,其次是二进制

三进制... 3 ?似乎联想到了什么

怎样快速学会使用二进制(用的这么多年的二进制)(16)

虽然三进制效率更高,但是却没有合适的运算逻辑和简易的实现方式

即使是更好实现的二进制,第一台通用计算机 ENIAC 也需要三万多个电子元件,五百多万手工焊接头,功率达到了惊人的 150 千瓦

电就是钱啊我的朋友!简单的都这么耗电,更复杂的谁试的起。

当地居民总觉得,每当这台计算机启动的时候,全城的灯都变暗了

怎样快速学会使用二进制(用的这么多年的二进制)(17)

不过随着科技的发展,这些问题已经得到了解决。

比如科学家们基于波斯特函数优化了三进制的运算逻辑,用对称的双电源供电实现正向饱和导通、负向饱和导通、不导通 3个稳定状态等等。

可这早就是若干年后的事了。科学家们吭哧吭哧解决了这些问题后,却绝望的发现,二进制早就以指数级的增速飞的没影了。

世界上最遥远的距离是你刚断线重连,而对线的人已经超神了一整局

怎样快速学会使用二进制(用的这么多年的二进制)(18)

就跟玩了很久,排名靠前的网游大号,就算明知道没选上最强势的职业,也少有人会下决心从零开始玩小号。

更别说是在越来越离不开计算机的今天,抛弃发展完善的二进制体系

说点看得见的,连现在的硬件体系都要洗牌,一张张燃气灶都成了摆设

怎样快速学会使用二进制(用的这么多年的二进制)(19)

不过暗戳戳练个强势职业的小号的人还是有的,万一哪天大号下水道了,谁说得准啊?

最早苏联是直接当大号玩的:在 1958 年制造三进制计算机的 Setun ,1970 年的增强版 Setun 70 ,都是当时的顶尖算力。

苏联造-三进制计算机 Setun

怎样快速学会使用二进制(用的这么多年的二进制)(20)

当然随着苏联解体,三进制计算机也混入了历史的尘埃,西方国家也一直没能复现 Setun 。

到了今天,芯片的制程越来越小,半导体逐渐靠近了量子这个玄学领域。就像开了等级上限的⽹游,二进制发展不动了, 三进制的机会就来了。

之前练没练的小号都开始了。

怎样快速学会使用二进制(用的这么多年的二进制)(21)

三进制最显而易见的好处是同样的信息需要的元件数更少,芯片的制程就可以稍微大上那么一点点,拖延半导体进入量子这个说不清道不明的玄学领域的时间。( 虽然从底层改变并不那么实际 )

怎样快速学会使用二进制(用的这么多年的二进制)(22)

多出来的一个数字,也给了三进制多一种可能性

二值布尔逻辑虽然让二进制飞速发展,但也让二进制里只有“ 真 ”,“ 假 ”两种状态。从认知来说,也许真、假、不确定三种状态才更符合人脑的思维。

也许少了“ 不确定 ”状态,才是智能变制杖的原罪,或许在三进制的逻辑下 AI 就能真正智能了呢?

在竞争激烈的量子领域,本身就会多一种额外的状态,不确定的叠加态

而这多出的状态,刚好可以用三进制比二进制多出来的那个数来表达

怎样快速学会使用二进制(用的这么多年的二进制)(23)

今年中国物理学家郭光灿和中国科技大学( USTC )的同事就成功完成了三进制 qutrit 量子信号的传输,这也是科学家们在量子领域第一次成功的三进制研究。

怎样快速学会使用二进制(用的这么多年的二进制)(24)

之前在只有经典计算机时,三进制研究的意义可能只是技术积累,但正是这些积累,催生了真正改变我们生活的技术。

而现在,对于研究三进制的科学家来说,二进制虽然有庞大成熟的工业体系,但已经微微呈现疲软:你已行至终局,而我才刚刚开局,但很快你就会发现,我们根本不在一张棋盘上

“ 变不可能为可能,才是科技的魅力 ”

,

免责声明:本文仅代表文章作者的个人观点,与本站无关。其原创性、真实性以及文中陈述文字和内容未经本站证实,对本文以及其中全部或者部分内容文字的真实性、完整性和原创性本站不作任何保证或承诺,请读者仅作参考,并自行核实相关内容。文章投诉邮箱:anhduc.ph@yahoo.com

    分享
    投诉
    首页