字母v是数字几(万物皆可编码:聊聊1~10这十个数字)

   2022-05-30 发条网0
核心提示:本文选自计算机科学经典著作《编码:隐匿在计算机软硬件背后的语言》。语言只不过是一种编码。我们之中的许多人在学校里至少都学过一门外语。所以我们知道,英文中的“cat”(猫)在其他语言中可以写做gato、chat、Katze、KOIIIK或ká

本文选自计算机科学经典著作《编码:隐匿在计算机软硬件背后的语言》。

语言只不过是一种编码。

我们之中的许多人在学校里至少都学过一门外语。所以我们知道,英文中的“cat”(猫)在其他语言中可以写做gato、chat、Katze、KOIIIK或kátta。

然而,数字似乎并不是那么容易随文化的不同而改变。不论我们说什么语言,或对数字使用什么样的发音,在这个星球上几乎所有人都用以下方式来书写数字:

1 2 3 4 5 6 7 8 9 10

这难道不就是数学被称作“通用语言”的理由么?

数字当然是我们平常所能接触到的一种最抽象的编码。当我们看到数字:

⊥8

不需要立刻将它与任何事物联系起来。我们可能会联想到3个苹果或者3个别的什么东西。但是当我们从上下文中得知该数字表示的是某个小孩的生日、电视频道、曲棍球赛的得分或蛋糕食谱中面粉的杯数时,也能够像认为它代表3个苹果时一样自然。因为数字最开始产生时就很抽象,所以对于我们来说,理解这样一个问题会有一点困难。这个问题就是如下数量的苹果:

并不一定要用符号“3”来表示。同样可以用“11”来表示。

首先让我们遗忘数字10原有的那些特性。大多数文明都是建立在以10为基数的数字系统上的(有的时候是以5为基数),这种情况并不奇怪。最开始,人们用自己的手指来计数。如果我们人类有8个或12个手指,那么我们的计数方式就会和现在有所不同。英语中Digit(数字)这个词同时也有手指、脚趾的意思,并且还有数字的意思,这并不是巧合。而five(五)和fist(拳头)这两个单词的拥有相同的词根也是同样的道理。

在这个意义上,以10为基数或使用十进制数字系统完全是随意的。而且,英文中还对基于十的数字赋予了几乎神奇的意义,并且给了它们特有的名字:十个一年是一个十年(decade);十个十年是一个世纪(century);十个世纪就是一个千年(millennium)。一千个一千就是一个百万(million);一千个百万就是一个十亿(billion)。以下都是10的各次幂。

10^1 = 10

10^2 = 100

10^3 = 1000(千)

10^4 = 10, 000

10^5 = 100, 000

10^6 = 1, 000, 000(百万)

10^7 = 10, 000, 000

10^8 = 100, 000, 000

10^9 = 1, 000, 000, 000(十亿)

大多数历史学家认为数字最初起源于对事物的计数,例如:人数、财产或商业交易的计数等。举个例子,如果有一个人有四只鸭子,用图画表示为:

后来,专门负责画鸭子的这个人会想:“为什么我非得要画四只鸭子?为什么我不画一只鸭子再用划线或其他事物来表示有四只鸭子呢?”

然后直到有一天,出现了一个人,他拥有27只鸭子,这种划线的方法就显得很可笑了。

有人说:“必须想一种更好的方法。”于是一个数字系统就诞生了。

所有早期的数字系统中,只有罗马数字沿用到了今天。我们可以在表盘上、纪念碑和雕像的日期上、一些书的页码中,或者在条款的概述中看到罗马数字,而令人最烦恼的就是电影的版权声明(必须足够快地破译位于演职人员表末尾的“MCMLIII”才能知道这部影片是哪一年发行的)。

27只鸭子用罗马数字表示为:

这个概念很容易理解:X表示10个划线,V表示5个划线。

沿用到今天的罗马数字符号有:

I V X L C D M

这里,字母I表示1,可以看做是一个划线或者一根伸出的手指。字母V像一只手,表示5。两个V是一个X,代表数字10。L是50。C来自单词centum,表示100。D是500。最后一个,M来自于拉丁文mille,意为1000。

尽管我们可能不会认同,但在很长一段时间内,罗马数字被人们看做是易于加减的,这也是为什么罗马数字在欧洲作记账之用一直沿用到今天。实际上,两个罗马数字相加的时候只不过是利用几个规则将两个数合并,这个规则是:五个I是一个V,两个V是一个X,五个X是一个L,以此类推。

但是用罗马数字进行乘法和除法却很复杂。很多其他早期数字系统(像古希腊数字系统)和罗马数字系统相似,它们在用于复杂运算方面同样也存在一定的不足。尽管古希腊人发明的非凡的几何学至今仍然是高中生的一门课程,但古希腊人并不是以代数而著称的。

如今我们所用的数字系统通常被称为阿拉伯数字,也可以称为印度-阿拉伯数字系统。它起源于印度,被阿拉伯数学家带入欧洲。其中最著名的就是波斯数学家穆罕默德?伊本穆萨?奥瑞兹穆(根据这个人的名字衍生出英文单词“algorithm”,算法),他在公元825年左右写了一本关于代数学的书,其中就用到了印度的计数系统。其拉丁文译本可追溯到公元1120年,它对加速整个欧洲从罗马数字到阿拉伯数字系统的转变有着重要影响。

阿拉伯数字系统不同于先前的数字系统,体现在以下三点。

阿拉伯数字系统是和位置相关的。也就是说,一个数字的位置不同,其代表数量也不同。对于一个数而言,其数字的位置和数字的大小一样,都是很重要的(但实际上,数字的位置更重要)。100和1,000,000这两个数中都只有一个1,而我们知道,1,000,000要远远大于100。实际上在早期的数字系统中也有一点是阿拉伯数字系统所没有的,那就是用来表示数字10的专门的符号。而在我们现在使用的数字系统中是没有代表10的专门符号的。另一方面,实际上阿拉伯数字也有一点是几乎所有早期数字系统所没有的,而这恰恰是一个比代表数字10的符号还重要得多的符号,那就是0。

是的,就是0。小小的一个零无疑是数字和数学史上最重要的发明之一。它支持位置计数法,因此可以将25、205和250区分开来。0也简化了与位置无关的数字系统中的一些非常复杂的运算,尤其是乘法和除法。

阿拉伯数字的整体结构可以以我们读数字的方式来展现。以4825为例,我们读做“四千八百二十五”,意思就是:

四千

八百

二十

或者,我们也可以将此结构以如下写法写出:

4825 = 4000 + 800 + 20 + 5

或者,对其进一步分解,可以将数字写作:

4825 = 4 × 1000 +

8 × 100 +

2 × 10 +

5 × 1

或者,以10的整数次幂的形式来表示:

4825 = 4 × 10^3 +

8 × 10^2 +

2 × 10^1 +

5 × 10^0

记住任何数的0次幂都等于1。

一个多位数中的每一位都有其各自特定的意义,如下图所示。这7个方格能代表0~9,999,999中的任何一个数字。

每个位置代表10的一个整数次幂。我们不需要一个专门的符号来表示数字“10”,因为我们可以将1放在不同的位置,并用0作为占位符。

另一个好处就是,以同样的方式将数字置于小数点右边可以表示分数。数字42,705.684就是:

4 × 10, 000 +

2 × 1000 +

7 × 100 +

0 × 10 +

5 × 1 +

6 ÷ 10 +

8 ÷ 100 +

4 ÷ 1000

这个数也可以写为不含除法的形式,如下:

4 × 10, 000 +

2 × 1000 +

7 × 100 +

0 × 10 +

5 × 1 +

6 × 0.1 +

8 × 0.01 +

4 × 0.001

或用10的幂的形式来表示:

4 × 10^4 +

2 × 10^3 +

7 × 10^2 +

0 × 10^1 +

5 × 10^0 +

6 × 10^-1 +

8 × 10^-2 +

4 × 10^-3

注意,10的幂指数是如何减小到0再变为负数的。

我们知道,3加4等于7。类似地,30加40等于70,300加400等于700,3000加4000等于7000。这就是阿拉伯数字的“闪光”之处。任何长度的十进制数相加时,只要根据一种方法将问题分成几步即可,而每个步骤最多只是将两个一位数字相加而已。这就是为什么以前有人会强迫你记住加法表的原因。

从最上边的一行和最左边的一列分别找出要相加的两个数字,这一行与这一列的交叉点就是所要得到的和。例如,4加6等于10。

同样,当你想将两个十进制数相乘的时候,方法可能稍微复杂些,但是你仍然只需要将问题分解成几步,做加法和一位数的乘法即可。在你的小学时代你一定也被要求必须记住下面的乘法表。

位置计数系统的好处并不在于它有多么好用,而在于对非十进制的系统而言,它仍然是易于实现计数的。我们现有的计数系统并不适用于每种情况。以10为基数的数字系统最大的问题是它对于卡通人物没有任何意义。大多数卡通人物每只手(或爪子)只有4根手指,因此它们需要一个以8为基数的计数系统。而有意思的是,许多我们在十进制数中所了解到的知识同样适合卡通朋友们所钟爱的八进制计数系统。

图 书 推 荐

▊《编码:隐匿在计算机软硬件背后的语言》

【美】Charles Petzold 著

左飞,薛佟佟 译

永不褪色的计算机科学经典著作用最简单的语言讲述最专业的知识

这是一本讲述计算机工作原理的书。不过,你千万不要因为“工作原理”之类的字眼就武断地认为,它是晦涩而难懂的。作者用丰富的想象和清晰的笔墨将看似繁杂的理论阐述得通俗易懂,你丝毫不会感到枯燥和生硬。更重要的是,你会因此而获得对计算机工作原理较深刻的理解。这种理解不是抽象层面上的,而是具有一定深度的,这种深度甚至不逊于“电气工程师”和“程序员”的理解。

▊《labuladong的算法小抄》

付东来(@labuladong) 著

GitHub 68.8k star的硬核算法教程labuladong带你挑战力扣算法题挑战BAT等大厂Offer

本书专攻算法刷题,训练算法思维,应对算法笔试。注重用套路和框架思维解决问题,以不变应万变。

 
反对 0举报 0 评论 0
 

免责声明:本文仅代表作者个人观点,与爱美生活网(本网)无关。其原创性以及文中陈述文字和内容未经本站证实,对本文以及其中全部或者部分内容、文字的真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
    本网站有部分内容均转载自其它媒体,转载目的在于传递更多信息,并不代表本网赞同其观点和对其真实性负责,若因作品内容、知识产权、版权和其他问题,请及时提供相关证明等材料并与我们留言联系,本网站将在规定时间内给予删除等相关处理.

  • 历史上谁统一了三国(灭亡魏国大将投降)
    历史上谁统一了三国(灭亡魏国大将投降)
    公元265年,司马昭之子司马炎篡夺曹魏政权,建国号晋,史称西晋,魏国灭亡。在此之前的263年,曹魏大将邓艾偷渡阴平,兵临成都城下,后主刘禅投降,蜀国灭亡。280年,晋派大将杜预、王濬出兵东吴,吴主孙皓投降,吴国灭亡。至此,三国皆亡,并归于晋
  • 绩效奖金是销售业绩提成吗
    绩效奖金是销售业绩提成吗
    不是。一般来说实行绩效管理或者绩效考核的公司才会有绩效工资这个说法。绩效工资是将员工工资按比例分为固定的和浮动的两部分。提成即将企业盈利按照一定的比例在企业和员工之间分成的方式。提成的方式类似计件制,有全额提成和超额提成两种。【法律依据】《
  • 赛欧汽车之家,13年款1.4排量雪佛兰照片
    赛欧汽车之家,13年款1.4排量雪佛兰照片
    首先,白。开着开着就成黄的了,相比其他1点4排量车型来讲。百公里油耗在7点5L左右,三滤等等。最近看了易车网和汽车之家关于赛欧三厢这款车开始,1点3L,35新一代赛欧三厢版运用了雪佛兰家族风设计,三厢版车型的热爱程度,1504轴距为2500
  • 小彩旗的微博(小彩旗微博新浪微博)
    小彩旗的微博(小彩旗微博新浪微博)
    小彩旗的微博(小彩旗微博新浪微博) ,杨丽萍的外甥女小彩旗发布了一条微博,与大家分享她最近忙碌的日常。小彩旗说,最近要拍戏、找角色、练舞蹈等等,这条内容发布于凌晨五点半,看得出她现在的生活非常充实,也非常辛苦。 对于小彩旗的勤奋刻苦,很多
  • 华为mate20什么时候上市,上市时间与价格说明
    华为mate20什么时候上市,上市时间与价格说明
    10月16日,华为将在伦敦发布Mate 20系列新机 现在,有知情人士爆料,国内的发布会将于10月26日在上海举行,并于当天下午18:08正式开卖。 随后,一张疑似天猫的预售界面被曝光,信息基本和爆料一致。 显示华为将在10月17日开启Ma
  • 汤姆索亚历险记人物的性格特征(汤姆撒切尔善良哈)
    汤姆索亚历险记人物的性格特征(汤姆撒切尔善良
    哈克贝利.费恩:不上学,没受过教育,却拥有一颗正义而勇敢的心。波莉姨妈:心地善良,担负着教育、无恙汤姆的责任。为汤姆调皮、闹事、失踪等烦恼伤心,也为汤姆勇敢、正义感到自豪。希德:一个循规蹈矩的“模范儿童”,学习成绩好。经常和汤姆作对,经常向
  • linux查看路径命令(分析linux命令用法指南)
    linux查看路径命令(分析linux命令用法指南)
    那么今天我们来看看他俩的另外一个小兄弟 —— du命令 简介 du 命令,全称是 disk usage,用来展示磁盘使用量的统计信息,会对目录进行递归统计。 说白了,最大的作用,就是看目录大小的。 参数 -a或-all 为每个指定文件
  • 帆布鞋配什么裤子好看(帆布鞋搭配教学)
    帆布鞋配什么裤子好看(帆布鞋搭配教学)
    说到帆布鞋,绝对是时尚的模范,即便在竞争力激烈的潮流圈,帆布鞋也始终屹立不倒,一直深受潮人icon们的喜爱与青睐。那对于3、40岁男人来说,怎么穿帆布鞋才更得体呢? 男人到了3、40岁,正处于一个半年轻半成熟的阶段,在选择鞋款上,大都不会
  • 极米投影仪怎么样,极米投影仪序列号查询
    极米投影仪怎么样,极米投影仪序列号查询
    很早就想入手投影仪了,刷了很久,刷到极米Z6。老实说,一开始只是看哪款价格合适,完全没想到,原来一个小小的投影仪还有这么多的参数和门道。再后来就开始了恶补投影仪知识的日子,有点时间就看投影产品。好在终于是让我摸透了,现在顺利入手了当贝C1,
  • 买皮鞋的人用火烧真的假的(皮鞋的是皱纹人造)
    买皮鞋的人用火烧真的假的(皮鞋的是皱纹人造)
    部分人通过用火烧的方法判断皮鞋是否为真皮,具体方法如下:用从真皮革和人造革背面撕下一点纤维或用边角料,点燃后,凡发出刺鼻的气味,结成疙瘩的是人造革;凡是发出毛发气味,不结硬疙瘩的是真皮。除此还有其他简便办法:用手指稍用力按一下皮鞋,皮上出现
点击排行