第1章 从自然数谈起
1.1 自然数的魔法
在日常生活中,我们和数字结下了不解之缘,无论是日期、时间、电话号码还是金钱的多少、物品的数量、生命的长短,哪一个都少不了和数字打交道。对于今天的学习者来说,在幼儿园阶段,甚至是刚牙牙学语、蹒跚学步时,很多人就在大人们不厌其烦的指导或“威逼利诱”下,扳着手指头开始接触和记忆自然数,学习简单的加减运算。
自然数,从名字上就可以看出它们的出现是自然而然的。当人们计量事物的数量和表示事件的次序时,自然数就诞生了。事实上,在人类文明开始之初,因为土地测量、财产分配、商业贸易等的需要,我们的祖先就尝试使用过很多不同的计数系统,用来记录和计算数字。研究人员发现最早的数字记录形式可以追溯到3万年前,相应的物证是一种带有表明数量的标记的伐木棍。
在曾经出现的刻痕计数、结绳计数、筹码计数、算盘计数以及二进制、十进制、十二进制、二十进制、六十进制等众多计数法和进制中,采用阿拉伯数字的“数值+数位”的十进制计数和排序系统备受青睐,今天在世界各地被广泛采用。
阿拉伯数字最早来源于古印度人的发明,后经阿拉伯人传入欧洲,经欧洲人加工固定成为现在通用的样子,不过在传承的过程中被谬传为阿拉伯数字,这也说明了传播者的重要性。阿拉伯数字的基本符号为1,2,3,…,9和0,我们在这里将这10个数字称为“基”——代指基本、基础的意思。10与人们的天然计数工具——手指和脚趾的数量一致,而英文“digit”(意为“数字”)一词的拉丁语词根的意思恰好就是“手指”或“脚趾”。由此可见,人们在很多时候可以打破语言和国界的限制,只要拥有一样的感受就能互通互融,科学知识无国界。
排序这件事可以有多种选择,但是一个简洁精巧的系统总是会受到欢迎的,因其有利于普及推广。在阿拉伯十进制系统中,除了作为“基”的10个数值,还需要一个计数单位,这样就有了“进制”的概念。0~9有专门的符号,从10开始就没有专门的符号了。10的概念是用“数位”表示的,每个“数位”代表10的几次方,十进制系统有个位、十位、百位、千位等。
1=100
10=101
100=102
1000=103
……
若在十进制下,一个数用符号记为anan-1…a1a0,则这表示anan-1…a1a0=an×10n+an-1×10n-1+…+a1×101+a0×100。
有了“数值+数位”的理念,再大的数字写起来都不费什么力气了,无论什么数字都可以依据0~9这10个基结合“数位”来表达,你只要把这10个数字放到正确的位置上即可。但是特别大的数字和特别小的数字写起来可能会费时间,因此一些更精巧的计数方法(例如阿拉伯数字的科学计数法)就被发明出来了。用这种计数法既可以表示微观世界中一个原子核的半径,也可以表示宏观世界里两颗遥远星球间的距离。
这里顺便提一下罗马数字。对应于阿拉伯数字1~10,罗马数字的写法是:Ⅰ,Ⅱ,Ⅲ,Ⅳ,Ⅴ,Ⅵ,Ⅶ,Ⅷ,Ⅸ,Ⅹ。罗马数字的计数原则是选择一些重要的数字(例如1,5,10,50,100等)并赋予这些数字相应的符号(例如50用L表示,100用C表示),其他数字均表示为这些重要数字的加减法组合(例如58的写法是LVIII,266的写法是CCLXVI)。
简单粗暴的处理方式和烦琐的表达直接导致的结果就是笨拙、复杂的罗马数字计数系统应用不方便,一旦数字超过1000,再进行加减运算,整个系统将不堪一击,其表现就是完全瘫痪。可想而知,这样的系统不可能普及,最终被无情淘汰是必然的。而今,我们只能在钟表的表盘、元素周期表、书稿章节和科学分类的序号标记等上面看到罗马数字的身影了。瑞士、德国生产的名表的表盘仍使用罗马数字,而非阿拉伯数字,有人说这是为了彰显复古和厚重风格,表示崇尚传统,但将之看成循规蹈矩、因循守旧或者审美习惯也未尝不可。
尽管今天以0~9为基的阿拉伯十进制系统被普遍使用,但是在不同的文化背景和场合下,人们也会选择其他不同基的计数系统。
在过去的几十年中,科学家们发现,除了数字,其他所有的信息(例如语言、图像、声音等)都可以用二进制编码来表示。现代社会处在电子信息时代,毫不夸张地说,二进制的力量改变了整个世界。今天人们使用的电子产品都是基于二进制的,这种系统的产生是因为计算机的数字电路里的每个开关都处于“开”和“关”两种状态之一。现代计算机技术就建立在识别这两种状态的基础上,而二进制也只有0和1这两个基,很容易用电子元件实现。二进制系统的“数位”有个位、二位、四位、八位等。
1=20
2=21
4=22
8=23
……
若在二进制下,一个数用符号记为anan-1…a1a0[这里为了不与十进制数混淆,将之记为(anan-1…a1a0)2],那么它与十进制数之间的关系是(anan-1…a1a0)2=an×2n+an-1×2n-1+…+a1×21+a0×20。
二进制数字只有0和1,为了表达十进制系统中的一个很小的数,可能需要用很长的一串0和1。例如,十进制中的89在二进制中可写成1011001,即(1011001)2=1×26+0×25+1×24+1×23+0×22+0×21+1×20=89。
德国哲学家、数学家莱布尼茨是他所处时代最伟大的思想家之一,他在二进制计数法中看到了宇宙创始之初的状态,想象1表示上帝,0表示虚无,上帝从虚无中创造出所有的实物。因此,他在数学系统中用1和0表示所有的数。莱布尼茨是系统地提出二进制法则的第一人,这为现代电子计算机的发展奠定了基础。他曾根据二进制原理制造了一台真正意义上的计算器,并将其献给他所尊崇的东方大国的康熙皇帝。康熙则将这一发明视为珍宝装在红木盒里藏于深宫,做到了“高束焉,庋藏焉”。
二进制的缺点是它表示的数字往往是极长的一个数字序列,从而占用了太多的计算机内存。为了节约内存,缩短二进制数字的各种方法被提出来了,八进制、十六进制、三十二进制以及六十四进制被逐步引进,计算机技术也得以不断进步。例如,八进制计数法采用0,1,2,3,4,5,6,7这8个基本符号,十六进制计数法采用0,1,2,3,4,5,6,7,8,9,A,B,C,D,E,F这16个基本符号。
再往前追溯至公元前3000年,古巴比伦人采用过用六十进制表示的数字系统。在六十进制下,一个数用符号记为anan-1…a1a0[这里为了不与十进制数混淆,将之记为(anan-1…a1a0)60],那么它与十进制数之间的关系是(anan-1…a1a0)60=an×60n+an-1×60n-1+…+a1×601+a0×600。
在今天的时间度量中,1小时有60分钟,1分钟有60秒。另外,一个圆周的度数为360°。这些都是六十进制在人们的生活中留下的文化印迹。60能够被1,2,3,4,5,6,10,12,15,20,30这11个比自身小的整数整除,因此六十进制在处理数量分配问题时具有明显的优势。
纵观各种进制,十进制是那么自然和易于接受。在计数时,人类的大脑可以本能地用十进制进行必要的思考,而对于其他进制,这种本能就消失殆尽,所以数学工作者又发展出了对各种进制进行相互转化的方法。
1971年,尼加拉瓜发行了一套名为“改变世界面貌的十个数学公式”的邮票。这十个数学公式是由一些著名的数学家联袂选出的,其中位列第一的是与手指计数基本法则有关的“1+1=2”。这个在今天的幼儿园里的小孩子看来再简单不过的数学式子是人类最初认识数量关系的基本公式,而正是从手指计数开始逐渐形成了进制系统。
“改变世界面貌的十个数学公式”之手指计数基本法则
进制是有意为之的发明。当这项发明出现以后,人们发现了随之而来的规律,这些规律不以你我的意志为转移,而又强有力地为我们的生产生活和科学研究提供了简单易懂、严谨有序的表述数字的方式。自然数的进制魔法带来的财富,无疑受到了全世界人们的重用和偏爱。