原文标题:《二进制会是计算机最好的选择吗?》
信息时代,我们的生活离不开计算机。我们看到的视频、图片,阅读的文字、数字和符号、听到的音乐,其实都是一串由 0 和 1 组合的序列。这就是我们计算机经常使用的二进制数。
你知道吗?世界上最早提出二进制的人,就是那个曾发现微积分的“百科全书”式的天才 —— 莱布尼茨。
你是否会好奇,为什么我们计算机不直接用常见的 0 到 9 描述?究竟什么是二进制呢?
在聊二进制前,让我们先来认识什么是十进制。
在日常生活中,我们习惯使用 0、1、2、3、4、5、6、7、8、9 这十个阿拉伯数字来记数。
当我们在商场上看到某件物品标价为 1246,就可以自然地拼读出来:一千二百四十六,而不是直接读成:一二四六。其实,我们发现,在一串数字中,每一位都代表不同含义。
1 2 4 6
千 百 十 个
于是,存在如下计算:
1246=1*103+2*102+4*101+6*100
可以看到,如果我们从第 0 位开始计数,每一位上的数字分别乘上固定数值,即“位权”,也就是“每一位的权重”。则第 i 位的权重就是
10i
一般地,对于一个 R 进制的数字,第 i(i 从 0 开始计数)位的位权为:
Ri
在我们生活中习惯使用的计数方法,就是十进制,即“逢十进一”。
尽管日常生活中,十进制的使用已深入人心。但是,在计算机领域,普遍采用二进制。
也就是只由 0 和 1 组成的计数法,逢二进一,第 i(i 从 0 开始计数)位的位权为:
2i
因此,当我们看到一串 0、1 序列时,我们需要进行如下的计算,才能转换为我们常用的十进制计数:
二进制:1 0 1 1
十进制:11=1*23+0*22+1*21+1*20
既然使用二进制有些“反人类”,为什么计算机会选择使用二进制呢?
二进制的特点包括:
状态简单:二进制只使用 0 和 1 两个数字组成,状态种类少,非常方便。
稳定性好,可靠性高:可以用低电平和高电平来划分 0 和 1 两种状态。举例来说,我们知道,电脑的主存储器是由晶体管组成。晶体管可在高压(1)和低压(0)两种状态之间转换。即使受到电磁干扰,电压会存在波动,我们也能很好地分辨 0 和 1 两种状态。这些 0、1 状态会由电脑处理器读取。根据软件指令,可通过晶体管的不同状态控制其他电脑设备,从而可靠地存储数据。其使用的数字装置简易,所用元件少,技术实现简单。
运算简单:与十进制相比,虽然二进制表示一个数的位数过多,但是对于计算机来说,计算 0 和 1 两个状态,比计算 0-9 十个状态更为简单。进位规则“逢二进一”,借位规则“借一当二”。对于计算机来说,二进制的运算规则简单。
通用性强:二进制可以清楚地划分是非对错。利用二进制,我们可以设计出基础的与、或、非逻辑运算元件并进行扩展。
每种类型的数据,都可以通过一套规则快速地实现二进制编码。例如,十进制可以转化为二进制。字母也可根据通过标准规则(如 UTF-8)进行二进制串编码。
同样,视频的每一帧由图片构成,图片则由每个像素构成,每个像素又可用 3 个二进制序列表示。
就连语音,都可以利用脉冲编码调制技术,以二进制的形式存储和传输。
所以,二进制可以广泛地应用到计算机的各个领域。
正因为有着这么多的优点,二进制被作为目前计算机唯一可识别和接受的语言,即机器语言。我们在开发、测试软件时常用的 C、C++、Java、Python 等等程序语言属于高级语言,它们最后都需转化为机器语言才能被计算机识别和执行。
尽管二进制在计算机已经得到普遍应用。但是,如果说二进制是计算机最理想的选择未免有些草率。因为,虽然二进制计算规则简单,但是未必能够完美地表达人们的真实想法。在一般情况下,人类大脑思维方式,在对待问题的看法上并不只有“真”和“假”、“是”与“非”两种答案,还有一种“不确定”。因此,在不少领域,二进制可能会受到极大的局限。
一般来说,n 位的 R 进制数可以描述 Rn 种信息内容,其需要使用 nR 个元件表示。于是,R 进制的效率可以用如下公式表示:
y(R)=Rn/nR
其含义可以理解为:在描述相同的信息量下,所需的元件数目越少,则工作效率越高。
当我们采用高中学过的求导等一系列计算后可以得出:当 R=e(e 为约等于 2.71828 的无限不循环小数)时,y 最大。此时,惊讶地发现,整数 3 的效率 y 比整数 2 距离 e 更近。
三进制才是那个被证明理论上效率最高的进制。
其实,早在 19 世纪 50 年代,前苏联就已经出现三进制计算机了。但是,由于政治、经济等因素,三进制计算机逐渐被人们抛弃。随着未来竞争激烈、充满神奇的量子领域中存在一种额外的状态 —— 不确定的叠加态,而三进制刚好可以通过“不确定”的那个数来表示,从而能够抗量子攻击。
因此,三进制计算机也为计算机的发展开辟新的可能,也再次引起人们的注意:我国的物理学家郭光灿和中国科学院大学同事首次实现三进制 qutirt 量子信号的传输。韩国也在最近几年成功研制出三进制的半导体。
通过这篇文章,我们可以认识到:
二进制与十进制区别
二进制的优点与应用
三进制的优点与进展
好学的你,不知不觉又涨知识了!
或许大家也开始憧憬计算机的发展趋势。科学,本来就是一件充满未知的事情。今天,二进制在计算机体系中已经十分完善,三进制也随着量子领域的出现而逐渐凸显优势。
本文来自微信公众号:中兴文档 (ID:ztedoc)