16进制数用空格分开 tcp_“二进制”“四进制”“八进制”“十进制”谁会是数据存储界的最强王者?...

ce1b48a48f97a52b34fdcfc0da83f885.png

引一引

我们人类天生十指,按理说我们更习惯用十进制计数是理所当然的。随着时间的推演各种进制的方式都尝试过统治“计数”界。不过就目前来看,“二进制”处于当之无愧的霸主地位

你能说清楚为什么吗?

这符合“逻辑”吗?

624884330251754215c84801df4bf9ed.png 1

从“十进制”被替代说起

怎样用机械或电气元件来保存数码,这是设计任何自动计算装置之前必须解决的问题,而它又和所用的“进制”有密切关系人类天生双手十指。“扳着手指头”计数,使十进制成了自然的数制。

其实,还有一种更自然的进制,那就是反映“有无”“上下”大小”“高低”“正负”“阴阳”“真假”这些普遍的矛盾对立或者叫作“逻辑”关系的二进制。

7ce9b477bc0a73e497e62b266eaff338.png这里不得不提一下我们先哲的智慧了,这种“逻辑二进制”在我国有着极其悠久的历史。比如我国古代传说中的“ 结绳记事”:有事就在绳子上打一个结。这里已经包含了“有”“无”概念的萌芽。

f755233ae343565b25bc8f5fb90bd9c7.png

card from Baidu

7ce9b477bc0a73e497e62b266eaff338.png 任何一个具有两种状态的物理过程都可以用来表示“有”和“无”,或者简单地写作1和0。把这些 1和0 组合起来,可以表示任何其他数码。

例如,从0到16的十进制数用二进制写出来就是:

0 1 10 11 100 101 110 111 1000 1001 1010 1011 1100  1101 1111 10000

为了避免混淆,我们往往还在二进制数的右下角加一个脚标2

7ce9b477bc0a73e497e62b266eaff338.png

二进制是最容易学习的数制。十进制乘法里的“九九表”,在二进制中剩下“一零得零,一一得一”两句口诀。十进制里的“四舍五入”,在二进制里成为“零舍一入”。

也许过不了很多年,我们的孩子们在幼儿园里的就会先学习二进制算术,再接触更复杂的十进制。我会和孩子们吹嘘“你老子当年可是直接学的十进制”

624884330251754215c84801df4bf9ed.png 2

当“二哥“遇到了”四弟“、”八弟“和“十六弟”

二进制在一个位置上用0和1两个符号,实现0和1两个数。

如果在两个位置上各用0和1两个符号一实现0,1,2,3四个数,就构成四进制

八进制则用三位二进制数,实现0,1,2,3,4,5,6,7八个数。

同理,用四位二进制可以实现十六进制,不过这时普通的数码不够用了,要以A,B,C,D,E,F来分别代表10,11,12,13,14,15。

e8339a51a9391c505ab8dcabbcd2eec3.png

自制图片

看了上图,大家应该明白如何在不同进制之间互相转换了。

7ce9b477bc0a73e497e62b266eaff338.png “伏羲氏画八卦”

最早用二进制组合出四进制和八进制的记载,应当认为是我国传说中的

“伏羲氏画八卦”

213e07c75786db3cded909791f91abf9.png

八卦图

card from 百度图片

伏羲用“--”和“—”两种符号拼成了八卦。

下面我们把八卦阵拉平,并写成二进制。

3802b17589be09662fba4b3becd7da30.png

古人解释《易经》说“两仪生四象,四象生八卦”,翻译成现代语言不妨理解为“二进制可以扩充成四进制,四进制可以扩充成八进制”,可见我们中华民族很早就使用了十进制以外的二、四、八等进制。

事实上中国式算盘还使用了十六进制和复合的二五进制。关于算盘的书面记载,至少可以追测到宋代名画《清明上河图》,那里药铺柜台上就赫然摆放着一个算盘!

4bf49a4fc4546d3dd2c8a95524c92686.png

card from http://blog.sina.com.cn/s/blog_4d666bcc01016e1x.html

624884330251754215c84801df4bf9ed.png 3

不如直接说吧,用几进制保存数码最为经济?

这要看“经济”的含义是什么,用三位十进制能表示的最大数是:

999

用三位二进制能表示的最大数是:

7

同理,用n位k进制能表示的最大数是:

f75f961a9bdb631c3a9dda7f68fc1267.png

假定每一位上的k进制数码0,1,2,…,k-1都各要用一个“状态来实现,而且n位k进制寄存器的成本c正比于状态的总数kn。要求以成本c=kn最小,而所能表示的最大数f75f961a9bdb631c3a9dda7f68fc1267.png,为指定常数,来确定k的值。这是带一个“约束条件”的优化问题,它很容易求解把成本对k微分,应有:

755d349cdd02a14da126efcd808f1262.png

再对约束条件微分,求得:

6cabf28a57e51c3c6d57a8f688031af3.png

代入前面的式子,得到决定k的关系:

e9e1aec84413a97b5406df3469cc65fc.png

即k等于自然对数的底e=2.71828…。最接近e的整数是3,于是按照上面讲的意义,最经济的应是三进制

1fad55edd90de506d9a81c16a1eadc2e.png

这兄弟,好像没见过啊

card from 百度图片

然而具有 三个状态的元件必须专门设计 ,能给出两个状态的物理效应却比比皆是。 2是最接近e的另一个整数, 这是使用二进制的又一个理由

参考:

数字文明

物理学

计算机文明

百度

新浪博客

互动问题

【互动问题:你也有对习以为常的身边事思考的例子吗?不妨分享出来,一起讨论】

请大家按照  互动:问题答案  的格式在评论区留言参与互动。

截止到 下周日 中午12点,点赞数前三名的朋友将获得我们送出的礼物。

上期拟获奖名单

如何打造自己的家庭影院?

(里面有奇思妙想)

我爱长发飘飘

? 美猴王 ?

lcxxdork

5469a915f541c36643b48d7eb5eba61c.png3eca33f6cb89c8f6685cdc15bb995925.png

在此我们感谢读者发来的礼物秀!

12f4b226607abd657c047fc4d109a9b6.png

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值