众所周知的二进制

一、数学不仅只有十进制

据法国数学教师乔治•伊夫拉①考证:在数字发明之前,古代人类和乌鸦、喜鹊等鸦科动物一样,都无法直接地感知4以上的数目,为了计算羊群、猎物、战士、季节等,人们不得不借助于小石子、贝壳,以及用刀刻槽的办法来计数,比如捕获了1头野兽,就用1块石子指代,捕获了3头,就放上3块石子,或用利器在树皮上或兽皮上刻痕表示,或用小棍摆在地上计数。“结绳记事”是地球上不同地域的古代人类都做过的事。我国古书《易经》中就有“结绳而治”的记载。传说古代波斯王打仗时也常用绳子打结来计算天数,而伊夫拉遇见过一位中国妇女,她也像原始部落的人那样把一根带子系在指节上,按指节的顺序每天将带子移动一次来计算日子。
用石头或者绳子是一件很麻烦的事情,我一直相信人类的伟大发明都是由于懒惰才形成的。所以历史上的各个地方表达“数字”概念出现了各不相同表示方法,古巴比仑采用六十进位的计数法,计算非常繁琐。古埃及的数字从一到十只有两个数字符号,从一百到一千万有四个数字符号,而且这些符号都是象形的,如用一只鸟表示十万。古希腊由于几何发达,因而轻视计算,记数方法落后,是用全部希腊字母来表示一到一万的数字,字母不够就用加符号“‘”等的方法来补充。古罗马采用的是累积法,如用ccc表示300。印度古代既有用字母表示,又有用累积法,到公元七世纪时方采用十进位值制,很可能受到中国的影响。现通用的印度——阿拉伯数码和记数法,大约在十世纪时才传到欧洲。更多
总之,乱起八糟一大堆,我就是想告诉你世界上除了小时候老师教你的最先进的十进制表达数字的方法,还有很多其他的进制,其中有一些是位值制计数法,十进制就是一种。

位值制计数法,每个数码所表示的数值,不仅取决于这个数码本身,而且取决于它在记数中所处的位置。

二、不同进制表达“数字”的方法不同

“数字”这个概念对于不同位值制计数法的意义各不相同,但是,为了表达101个鸟,不管用十进制、六十进制或者101个石头或者打了101个绳结,表达的都是一个事情,所以让我们看看智商不同的人怎么看待这100个鸟:

古代人类:找来101个石头对应这101个鸟,跑一个扔一个,来一个加一个

聪明点的古代人:数手指,数出10个,找一个大石头,再数10个,找一个大石头,…不到10个就拿小石头对应。然后他发现自己的大石头也够10个了,就再找个更大的时候代替者10个中等的石头。

:因为我们太熟悉十进制了,看到十个鸟,直接都写出了101放在脑子里(这就是为什么你认为你比古代祖先们聪明的借口,只是因为你计算得快了一点)

三、机器表达“数字”的方法

每个玩电脑的人都知道计算机是用二进制表示各种数据的,要么学过、要么玩电脑死机的时候出现了一串01、要么就是上网的时候看帖子里面各种高端二进制,其实也没啥高端的,只不过小学老师教你数学的时候使用的十进制。那么计算机怎么看这101个鸟呢。
其实计算机看你和你看古代人差不多一样,因为计算机喜欢查2数,确切的说它只会查俩数,所以如果一台计算机跑来看着101个鸟:数2个,找个1号大石头,再数2个,找个1号大石头… 然后他就有了50个1号大石头和一个0号小石头。然后他又去查50个1号大石头,把原来的记过表示成

 101个0号石头
= 25个2号 + 1个0号 
= 12个3号 + 1个2号 + 1个0号 
= 6个4号 + 1个2号 + 1个0号
= 3个5号 + 1个2号 + 1个0号
= 1个6号 + 1个5号 + 1个2号 + 1个0号

好吧,虽然这个不断查的过程确实让我们头疼,但是最终的表示还是不错的,用4个石头就搞定了101个鸟。实际上你已经得到了计算机眼里的数学1100101,他所表达的鸟的数量和聪明古代人所标的的鸟的数量是一样的,根据上面的查数过程,你可以知道他们是怎么计算得到具体多少只鸟的:

1*2^0 + 0*2^1 + 1*2^2 + 0*2^3 + 0*2^4 + 1*2^5 + 1*2^6
=
    一群鸟,鸟,鸟,鸟,鸟,鸟...
= 
1*10^0 + 0*10^1 + 1*10^2

如果小学老师交的是二进制,可能你会成为机器人!因为你的脑袋和计算的计算方法会很相似!

四、众所周知的二进制

实际上,在计算机机器的世界里,我们常常把表示数据的二进制叫做机器数

机器数所表达的含义和用石头表达鸟的数量很相似,只是会在第一位多加一个位置标示符号,1标示负数,0标示正数,第一位以外的位标示具体这个数是多少。

所以,为区别起见,将带符号位的机器数对应的真正数值称为机器数的真值

比如上面的1100101可能标示为:

符号位 真值具体数
0 1100101+101
1 1100101-101
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值