问小白 wenxiaobai
资讯
历史
科技
环境与自然
成长
游戏
财经
文学与艺术
美食
健康
家居
文化
情感
汽车
三农
军事
旅行
运动
教育
生活
星座命理

二进制和十进制相互转换的原理

创作时间:
作者:
@小白创作中心

二进制和十进制相互转换的原理

引用
CSDN
1.
https://blog.csdn.net/liwangjin0116/article/details/143263055

二进制和十进制的相互转换是计算机科学中的基础概念,但你是否思考过为什么1010(二进制)等于10(十进制)?本文将带你深入理解二进制和十进制换算的根本原理,以及为什么人类选择了十进制。

为什么人类社会选择了十进制

关于这个问题,我自己思考了很久,我们研究二进制和十进制的换算原理,这个问题就绕不过去,因为如果我们从一开始就使用二进制,而不是十进制,那就不涉及到现在的换算问题。

我自己在初步想通这个问题以后,也去查了网上的一些说法,有跟我想法类似的,也有很多高深的,为了让大家更容易的理解,在这里我采用了自己的这个对于普通人来说更容易接受的解释。

一共有2阶思考:

  1. 前提是以现有的十进制,阿拉伯数字0-9去理解。

因为我数学能力一般,很难去跳脱出现有的数学基础概念去思考这个问题,所以只能是借用已有的基础概念去分析这个问题。

二进制的意思是逢二进一,八进制就是逢八进一,十进制就是逢十进一,十六进制就是逢十六进一。

数字是用来表示物体的数量,按照已有的阿拉伯数字,“10”在上面每种进制中对应的实际物体数量如下:

10 实际数量
二进制 2
八进制 8
十进制 10
十六进制 16

从上表中我们可以看到,只有十进制的10跟实际数量是一致的,这样我们的大脑不需要经过额外的运算,可以通过看到的数字很直观的获取到实际的数据。

  1. 从我们的手指数量去理解。

一般情况下,我们每只手有5个手指,两只手刚好是10,一开始没有数学概念的时候,通过手指去计数,每够10个以后做一个标记,我想这大概念就是十进制的由来吧。

另外通过算盘我们也能看到十进制的影子,而且还是二进制与五进制结合的十进制,跟2只手、5个手指相对应,当我把这两个东西联系起来的时候,瞬间觉得好神奇。

二进制转换十进制

从上面我们可以初步认识到,十进制的数字跟实际数量是相同的,所以二进制转换十进制的本质就是算出二进制表示的具体数量,现在我们来看一开始提出的那个问题,为什么1101(二进制)换算十进制第一位会是2的3次幂。

二进制就是逢二进一,我们可以理解成一个合体升级的游戏,每2个同级的物体就可以合并升级成1个更高级别的物体,上图中的d我们看为1级,2个d合成1个c,2个c又合成一个b,最后2个b合成1个a,a在这里代表4级。

从d到a(从1级到4级),一共经历了3次合成(升级),所以1个a是由222(2的3次幂)个d组成的,而d代表计数的最小单元,所以1个a代表的实际数量就是8(个d)。

对于1101(二进制),从右往左分别是1级(1个d)、2级(0个c)、3级(1个b)、4级(1个a),现在要把二进制换算成十进制,也就是算出实际的数量,而d又是计数的最小单元,所以实际上就是算出一共有多少个d。

所有我们可以算出1101(二进制)一共代表了13个d。

8+4+0+1 = 13个d

对于八进制、十进制、十六进制来说也是同样的原理,以1101为例,我们看一下每种进制的换算结果。

十进制转换二进制

在网上找了一个十进制转换二进制的图片,用十进制的数去除2,一直到最后为1,然后从下到上列出余数,就是对应的二进制,那么为什么是这样的换算逻辑呢?

下面我们还是用1101(二进制)来举例,对应的十进制是13,也就是代表实际数量是有13个d,还是按照下面张图,我们去把这13个d去合成升级。

第1次合成(升级):13÷2=6,余1。代表合成了6个c,剩下1个d。

第2次合成(升级):6÷2=3。代表合成了3个b。

第3次合成(升级):3÷2=1,余1。代表合成了1个a,剩下1个b。

最后的结果是,13个d,我们一共合成了1个a,1个b,0个c,1个d。所以用二进制去表示13就是1101。

© 2023 北京元石科技有限公司 ◎ 京公网安备 11010802042949号