在直面标题中的问题之前,先思考一个问题,什么是记数

很大略,便是用某种符号把数量记下来嘛。
它所涉及的一套规则叫记数系统(numeral system),也称为记数法。

10_怎么读_较个真10怎么读真的读作十吗 求职信范文

比如,用A代表第一个数,今后每增加一个,就依次用B,C,······,Z代表,若连续增加,那就用AA,AB,AC,······,ZZ,AAA等等来代表了。
用过Excel表的人都知道,它的列编号所采取的便是这种记数法。

再比如打算机中采取的二进制(binary),用0代表无,用1代表第一个数,今后每增加一个,就依次用10,11,100,101,110等代表。

而最通畅的所谓“十进制”,英文名decimalism, 它的做法是:

用0代表无,用1代表第一个数,今后每增加一个依次用2,3,······,9代表,接下来若连续增加,那就依次是10,11,12,······这些。

被称作“N进制”的记数法还有很多,例如三进制(ternary),八进制(octal),十六进制(hexadecimal)等。
实际上,任何非零整数进制都存在,当然包括一进制,它叫unary numeral system。

先声明下,“进制”这个说法是中文特有的,强调记数中“逢N进1”的规则,但实际上这并不是记数法本身的哀求。
关于这一点,本文后面会讲到。

现在我们先来看,这些记数法背后有什么共同的道理呢?

为了搞清楚这个问题,我们不妨从人类最大略的记数法讲起。

想象你穿越到10万年前,假设那时的你幸运的还是一个人,你现在卖力记录你们部落猎物的数量,你该怎么做呢?

原始人用棍棒记数

没错,用棍棒来记数!
一根棍棒代表一个猎物,每增加一个猎物就增加一根棍棒。
但这样事情量太大,如果打的猎物太多,棍棒不足用了,怎么办?

“奈何姓万”的故事

聪明的你立时想到:能不能用有限的棍棒来表示任意数呢?

没错,你这灵光一闪,就代表人类开始思考抽象的记数问题了!

棍棒,或各种兽骨等物件,有各种不同的形状,若将它们看作一个个不同符号,那么,有限个不同形状的物件就构成了一个有限符号集。
从这里面取出任意个符号(可重复),它们的每个排列就代表一个数。

原始人的记数工具

可是,问题来了,这些符号的排列表示数的规则是什么呢?

这便是记数的核心问题了 !

为了更清晰地阐述,我们先明确三个观点。

第一个观点,用来记数的符号——数字(digit),也叫数位符。
不仅包括阿拉伯数字,各种字母也可用作数字,常见的如英文大写字母。
要把稳区分数字与数,数(number)由数字排列而成,例如“101”和“AA”都是数,单个数字本身也是一个数。

第二个观点,数位符构成的凑集,我们称之为数位集(digit set)。
例如前面提到的第一种记数,它的数位集是26个大写英笔墨母的凑集。
二进制的数位集是{0,1,2},十进制的数位集是{0,1,2,3,···,9}。

第三个观点,数字符号与整数值之间的对应关系,叫整数数值函数,用 表示,它的定义域是数位集,而它的值域是整数。

须要指出的是,这里的“整数”二字是形式上的、与详细的记数法无关的整数。
就像本文前面提到的三种记数时说的那样,它是指按“从第一个数开始,每增加一个就加一”的规则来计数(counting)时,所得到的那个抽象的整数。

讲到这里,也要顺便说下,计数与记数是不同的。
计数是一种重复增一或减一的行为,它对应的结果是存在于大脑中天然抽象数值;而记数则是数的某种记录办法,是表示数的符号系统给出的结果。

当然,在实际中,这个所谓的“抽象整数”一样平常总是用我们熟习的十进制来兑现表示的,毕竟抽象的数只存在于大脑中,无法直接表示出来嘛!

对付前面提到的Excel表的列记数中,函数 是全部英文大写字母与等量个整数之间的逐一映射。
例如 。

而对一样平常的“N进制”记数法来说,若数字的值便是它作为一个数(number)时的值,则 是一个恒等函数(identity function),因此可用字符 直接替代 ,例如二进制,八进制,十进制都是如此。

但N超过10的“N进制”,其数位集包含一些其他字符,例如十六进制的数位集为{0,1,2,3,···,9,A,B,C,D,E,F},故十六进制的数值函数为

三个观点讲完了,现在来看,用数位符怎么表示数?

多少个数位符(可重复)的一个排列就表示一个数,我们称之为记数(numeration)。
一个排列中有几个数位符,则这个数便是几位数。

一个大略的例子,十进制下的数字串“2045”代表的数值(value)为

若这个数字串是八进制的话,那它的值为 算出来便是1061。

显然,这里的值是用十进制表示的,既然数值该当是与任何记数法无关的抽象计数结果,这并不是必须的。
但十进制是所有人最熟习的记数表示,以是就用十进制了。
后面凡说到数值,也都默认用十进制表示。

根据这两个例子,相信读者能看出,某种b进制记数法下的一个字符排列 代表一个整数,其值为 如果引入小数点到字符排列中,则上述记数法可推广到小数,例如b进制下 代表的数值为 例如,8进制下的0.124的值为 这种数的表示具有递归(recursion)的特点,以整数为例即

据此递归性子,当一个数的首位是0时,由于 ,这表明 因此数最左边的0是多余的。
考虑到这一点,有些人习气在记录整数位只是单个零的小数时,可忽略那个零,例如将“0.123”直接写作“.123”。

上式还透露一个有趣的事实是,对0这个数,按上述规则,它自身也可以被拿掉,这就导致 右边是空的?没错!
这正是0的意义——它代表什么也没有。

好了,以上便是最常见的记数法的规则。

我们看到,N进制数位集中并不包含数N对应的字符,例如二进制中没有2,三进制中没有3,八进制中没有8。
以是,若把二进制说成2进制,把八进制说成8进制,就不足严谨了。

实在,英语对此也是不失落严谨的,各个“N进制”的名称中都避免涌现对应的数字,例如二进制叫binary,八进制叫octal,等等。

N进制中对应的N的那个数,由于已经超出数位集本身的范围,须要用1和0的排列来表示。

二进制中的10代表数位符1和0的一个排列,它读作“one zero”或“一零”,八进制中也如此,而十进制中的10也一样是如此!

也便是说,“10”一定不是“十”的对应的数位符——数位符必须是单个字符嘛!
它的真实身份是字符集中的1和0的一个排列,应读作“一零”,而非“十”。

你可能会说:“10”在其他进制中的确不是“十”,但在十进制中不恰好便是“十”吗?既然如此,那读作“十”不恰好吗?

对大多数人来说,这么做的确无可厚非。

但是你知道,“十”既然是一个汉语的单音节语素,它该当对应单个字符,将其对应一个数字的排列“10”是不太妥当的。

你可能会问:按你这说的,十进制下的“20”读作“二十”不可以,应读作“二零”?

那倒不是这样,在十进制下,“20”的数值的确便是“二十”,而且由于它有两个音节,不会被误以为是一个数位符,以是这么读是完备没问题的。

实在十进制下的“10”,你若读作“一十”,那比读作“十”更得当。

这么说吧,面对一个由数位符排列形成的数,你可以有两种读法。

第一种是当字符复读机,直接念数位符。
例如,“1020”就读“一零二零”,管它是什么进制的数,反正总不会错。
虽然这么做有点机器般的冷漠觉得,但这大概是大多数搞打算机的人最惬意的读法。

第二种是按照详细的进制,准确地读出它作为一个抽象天然数所具有的真实值。
例如十进制下,“10”读作“十”,八进制下的“10”读作“八”。

第二种方法虽然俏丽,但当你面对一个非十进制的数时,习气十进制的你,须要快速的读出它的值可不那么随意马虎哦!

纵然是熟习的十进制,面对一长串数字,坦白讲,笔者有时也会读错。
更别说听写英语数了,假如一个个念字符就好了。

这个你可能用得着

实际上,第二种方法不再是纯挚记数了,而是计数——给出天然抽象数的真实值。
在前面提到的记数系统中的整数数值函数便是干这件事,但好在它只须要干很少次——数位集的长度对应的次数。

显然,对一个

我很

当然,若你以为没必要纠结这些细节,也没紧要,由于在你坚持把“10”读作“十”时,该当不会有人和你抬杠的。

至此,关于“N进制”记数法,我们讲完了。

但大家有没故意识到,我们熟知的“逢N进1”的规则彷佛被忽略了?

的确,但本就该如此!

由于“逢N进1”这件事是当你计数(不是记数)时,为了得到精确的记数,你须要做的事,它与记数规则本身没什么关系。

前面说过,所谓计数,大略的说,便是在数数时不断加一减一。

对N进制的数来说,当对末位数字是N-1的数加1时,末位要变成0,而倒数第二位则要增1,这便是末位的进位;若倒数第二位增1之前也是N-1,则同样也要进位,直到抵达某个小于N-1的数字,进位停滞。

虽然常见的记数法都知足这个规律,但若看Excel表中列的记数法,由于它的数位集中不含0,以是它并不是按这种“逢N进1”的规则来记数的,例如Z后面是AA而非A0,这是怎么回事呢?

这个问题涉及另一种类型的记数法,叫做双射(bijective)记数法。
而我们常见的十进制属于标准(standard)记数法,除此之外,还有一种叫平衡(balanced)记数法。

在弄懂这些不同类型的记数法之后,你一定会对记数问题有更深入的理解,例如你会理解“一进制”为什么是可以存在的,并能理解各种奇异的记数法存在的合理性,包括负二进制,Π进制,2i进制等等。

同时,你还会创造,“逢N进1”并不是记数法本身哀求的。

虽然所有记数法的英文名称中并无“进位”之义,但在中文里,所有记数法的名称都具有“x进制”的形式,个中缘由,笔者没有细究。

好了,关于记数法,就先讲到这里吧。

参考文献

https://www.britannica.com/science/numeral

https://en.wikipedia.org/wiki/Numeral_system

https://en.wikipedia.org/wiki/Bijective_numeration

https://www.geeksforgeeks.org/number-system-in-maths/

END

转载内容仅代表作者不雅观点

不代表中科院物理所态度

如需转载请联系原"大众年夜众号

来源:物含妙理

编辑:花卷