记数系统
历史
更多资料:自然数#历史与0的定性
在木头、骨头或石头上的计数符号从史前时代就开始被使用了。石器时代的文化,包括古代印第安人,使用计数符号进行赌博、私人服务和交易。
在公元前8000年至前3500年间,苏美尔人发明了使用粘土保留数字信息。他们的做法是将各种形状的小的粘土记号像珠子一样串在一起。从大约前3500年开始,粘土记号逐渐被数字符号取代。这些数字符号是使用圆的笔针刻在粘土块上,然后烧制而成的。大约前3100年,数字符号与被计数的事物分离,成为抽象的符号。在前2700年至前2000年间,圆的笔针逐渐被一种尖的笔针取代,这种笔针可以在粘土上刻出楔形符号。这种楔形数字和圆形数字相似,并保留了符号数值记数法。这些记数系统逐渐演变成了一种常见的六十进制系统。这个系统是一种位置数值记数法,只使用竖向的楔形和人形两种符号,而且能够表示分数。这个系统在古巴比伦的初期(大约前1950年)得到了充分的发展,并成为巴比伦尼亚的标准。
上述六十进制系统是一种混合进位制系统,它的一个符号序列的不同位置上使用10和6两个基数。这个系统被广泛地应用于商业,同时也在天文学和其他计算中被使用。这个系统从巴比伦尼亚输出,并传遍了美索不达米亚,包括希腊,罗马和埃及。今天,我们仍然用它来计算时间(1小时=60分钟)和角度(1度=60分)。
中国古代采用算筹记数,个位百位万位等奇数位用纵筹,偶数位用横筹,零用空位表示。有时,军队人数和供给品记数采用质数的算筹,并按照模算术运算。(参看:大衍求一术,中国剩余定理)。模算术的好处在于,尽管其加法相对困难,但乘法很容易。这使得模算术很适合军需品的计算。在现代,同样的模算术有时用于数字信号处理。
罗马帝国使用腊、纸草、和石头上的割符,大致遵从希腊人将字母对应不同数的习惯。罗马数字在欧洲被普遍使用,直到1500年代进位制开始流行。
中美洲的玛雅数字采用20或18为基数的系统,可能继承自奥尔梅克文明,它包含了位置数值记数法和零这样的高级属性。他们将此用于高级的天文计算,包括高精度的太阳年长度和金星轨道的计算。
印加帝国采用奇普,一种打结的带颜色的绳子来记数。关于使用结和颜色来编码的知识被西班牙征服者于16世纪所摈弃,并因此失传。今天,简单的结绳工具仍在安地斯山脉地区使用。
有些权威认为数位算术随着中国的算盘的广泛使用而开始。最早的书面数位记录似乎是大约400年的算盘计算的结果。特别在大约932年,零已被中国数学家正确地表述了,并且似乎是因为采用一个圆圈表示没有算盘珠子的那一位而产生的。
在印度,现代数位数字系统被传给阿拉伯人。可能是和天文表格一起,这一系统被一位印度大使在约773年带到巴格达。对于印度的数字系统的详细讨论,参看阿拉伯数字和印度数字。
从印度出发,苏丹们和非洲的旺盛贸易将此数字系统的概念带到了开罗。阿拉伯数学家们将此系统推广到十进制分数。在9世纪,花拉子密写下了关于该系统的重要著作。随着12世纪该著作在西班牙被翻译和斐波那契的《计算书》在1201年的出版,该系统传入欧洲。在欧洲,完整的带零的印度系统是于12世纪由阿拉伯人带来的。
二进制系统由莱布尼兹在17世纪传播,莱布尼兹在他工作的早期形成了这一概念,并在阅读中国的《易经》再次巩固了这一想法。由于计算机的使用,二进制系统在20世纪变得更加普遍。
常用基数
十
十进制是今天最为常用的系统。它被视为因为人类具有十根手指而产生。
二十
玛雅文明和其它前哥伦布时期中美洲文明使用二十进制、因努伊特的因努伊特数字,可能是源于人的手指和脚趾总数。
八
基数8的系统(八进制)是北加利福尼亚的Yuki部落设计的,他们使用了手指间的间隔来数数。也有语言学证据显示青铜时代印欧人(多数欧洲和印度语言来源于此)可能用基数10的系统取代了基数8系统(或者一个只能数到8的系统)。证据是代表9的词, newm ,根据一些历史学家推测来源于“新”("new", newo- ),这表示数字9是当时最近发明的,所以称为‘新数’("new number") (Mallory & Adams 1997年)。
九
涅涅茨语曾经使用基数9的系统(九进制),但在俄语的影响下转变为十进制。 yúq 一词最初表示9,但在俄语影响下变成了10的意思;所以在现在的涅涅茨,9现在是 xasu-yúq ,也就是“涅涅茨 yúq ”,而10就是 yúq ,但在东部方言中也作 lúca-yúq , 也就是“俄语 yúq ”。
十二
基数12的系统(十二进制)曾经很流行,因为乘法和除法比十进制方便,而加法同样简单。12很有用,因为它有很多因子。它是1到4最小的公倍数。我们对十二有一个特殊的词“打”( dozen ),并且使用12小时作为一个白天或者一个黑夜。十二进制可能来自于一只手除了拇指以外的四个手指的指节个数,它们曾被用来记数。
六十
基数为60的系统(六十进制)是苏美尔人和他们在美索不达米亚的继承者所使用的,今天还在我们的计时系统中存在(所以一小时有60分钟而一分钟有60秒)。60也有大量因子,包括前六个自然数。六十进制系统被认为是因为十进制和十二进制合并过程中产生的。中国历法中,六十进制的甲子系统用于表示年,每个60年循环中的年用两个符号代表,第一个符号是十进制的天干,第二个符号是十二进制的地支。两个符号在后续一年中同时前进一,这样同样的组合在60年后再现。该系统的第二个符号也和12个动物的生肖系统对应。
二
基数为2的系统(二进制)的流行及应用主要是因为电子计算机的发明。以2为基数,也代表只有两种变化:不是1就是0。最初的电子计算机以开关电路组成,只有两种状态:开(1)及关(0),并以此引伸作各种复杂的逻辑变化。而现今二进制亦普遍使用于数码影音系统中。
十六
基数为16的系统(十六进制)曾经在中国的重量单位上使用过,比如,规定16两为一斤。现在的16进制则普遍应用在电脑领域,这是因为将二进制数字转化为十六进制数字非常容易,用十六进制表达数字比用二进制方便。1字节(一个8个位的二进制数字)可以很方便的表示成一个两个位的16进制数字。
进位制详解
更多资料:位置记法
在基数 b 的位置记数系统(其中 b 是一个正自然数,叫做基数), b 个基本符号(或者叫数字)对应于包括0的最小 b 个自然数。 要产生其他的数,符号在数中的位置要被用到。最后一位的符号用它本身的值,向左一位其值乘以 b 。
例如,在十进制系统中(基数10),数4327表示( 4 ×10 ) + ( 3 ×10 ) + ( 2 ×10 ) + ( 7 ×10 ),注意10 = 1。
一般来讲,若 b 是基底,我们在 b 进制系统中的数表示为 a 1 b + a 2 b + a 3 b + ... + a k+1 b 的形式,并按次序写下数字 a 1 a 2 a 3 ... a k+1 。这些数字是0到 b -1的自然数。
若一段文字(譬如这段文字)讨论多个基数,若有歧义时,基数(本身用十进制表示)用下标方式写在数的右边。除非有上下文说明,没有下标的数字视为十进制。 通过使用一点(小数点)来将数字分成两组,就可以用位置系统来表示小数。例如,基数-2系统10.11表示1×2 + 0×2 +1×2 +1×2 = 2.75。
一般来讲, b 进制系统中的数有如下形式:
数b 和b 是相应数字的 比重。
注意有一个数有一个终止或者循环当且仅当它是有理数;这不依赖于基数的选择。在一个进制中终止的数可以在另外一个有循环小数(thus 0.3 10 = 0.0100110011001... 2 )。一个无理数在所有进制中不循环(无穷位不循环数字)。这样,例如二进制中,π= 3.1415926... 10 可以写作不循环的11.001001000011111... 2 。
若 b = p 是一个质数,可以定义其向左的扩展不停止的 p 进制数字;这些数字称为p进数(p-adic)。
进制转换
转换正整数的进制的有一个简单算法,就是通过用目标基数作长除法;余数给出从最低位开始的“数字”。例如,1020304从10进制转到7进制:
再如,10110111 从2进制到5进制:
转换一个“十进制”小数,可以用重复乘法,将整数部分作为“数字”。不幸的是有限小数不一定转换成为有限小数,例如0.1A4C从16进制转换到9进制:
一般化变长整数
更一般化的有一种记法(这里写作小头式),例如 a 0 a 1 a 2 用作 a 0 + a 1 b 1 + a 2 b 1 b 2 , etc.
参看
计算机数字格式
数量级 (数)
减法式记法
德尼数字 – 虚构的数字系统,来自电子游戏系列 神秘岛
结绳记数 印加数字系统
巴比伦数字– 六十进制系统
黄金分割基数
参看
数
十进制
参考
Georges Ifrah. The Universal History of Numbers : From Prehistory to the Invention of the Computer , Wiley, 1999. ISBN 0-471-37568-3
高德纳. 《计算机程序设计艺术》. Volume 2, 3rd Ed.Addison-Wesley. pp.194–213, "Positional Number Systems".
J.P. Mallory and D.Q. Adams, Encyclopedia of Indo-European Culture , Fitzroy Dearborn Publishers, London and Chicago, 1997.
免责声明:以上内容版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。感谢每一位辛勤著写的作者,感谢每一位的分享。
相关资料
- 有价值
- 一般般
- 没价值