中国数学史话《三》

说数


数是最基本的文明要素之一。没有文字的民族在生产生活中要计数,所以数的概念应在文明产生之前就已产生。日本的本多胜一在《极限的民族》中写道,爱斯基摩人(现恢复了因纽特人之称)数到六都需要相当大的决心。政府让他们统计狩猎情况,他们难以做到,作者认为,狩猎民族都缺乏数的概念,按因纽特(Inuit)即汉代的挹娄,也就是先秦的肃慎,住在我国东北一带时文化不至于如此落后,不然它与中原的交流不会达到那样密切的程度,况且在《逸周书.王会解》中肃慎被排在东北夷第一位。单调的环境和简单的生活能使文化退化。古代玛雅人数学发达,数字达到十进制的亿级以上,但今天的玛雅人文化落后,叫人感叹!

(一)数字与计算

拉丁文“计算”来自“石块”,非洲“计算”词根则是“鳄鱼”,可以知道计算的用具。

中国上古缺乏文献记载,数字的产生无从考证,8000多年前贾湖文化已有了数的概念。始于轩辕的六十甲子可以说是六十进制。马家窑文化有把一个正方形等分为100个小正方形的图案,江苏海安良渚文化有“三五三三六四”和“六二三五三一”的卦文,即“遁”和“大壮”。《尚书.尧典》说一年有“三百有六旬有六日”,显然是十进制,为了设置闰月,需要一定的计算。甲骨文数字为十进制。最大的数是三万。周代以后,传世文献渐渐多起来。天文、历法、乐律、人口统计、工程都涉及很大的数字,如乐律大数,黄钟177147,大吕165888,太簇157464.....而古希腊人计算不超过一万,如果大于一万,就称为“无穷大”了。
算筹表示数与现在阿拉伯数字表示法完全一致。

立算筹表示个位、百位、万位、百万位......卧算筹表示十位、千位、十万位、千万位......零用空位表示。这在公元前几个世纪里,是世界最先进的计数法和表示法。

算筹的颜色,红为正数,黑为负数,但后来把红作为负数,今天说“赤字”,与之相同。算筹记数法明代被综合为一个系统——苏州码子。70年代末第二次简化汉字,后来又停止推广,其中表示“算”的“祘”是一个古字,取自算筹的形名胜,筭是算的同音字,意为算筹。

筹算与阿拉伯数字计数、计算相比,不太方便,但在阿拉伯数字产生之前筹算是世界最先进的计算体系。古人如何用筹算计算分数、乘方、开方?不得而知。筹算直到明代才退出历史舞台。而日常生活中,“统筹”、“筹划”仍留下了筹算的痕迹。珠算除法九归口诀。

算盘运算快捷、准确,一般认为出现在宋代,有的说是唐代。实际上汉代文献明确记载了算盘和珠算。公元前600年已有算板,十个珠为一串,一组组排列,与后代的算盘原理相同。很难想像,刘徽、祖冲之等大数家不借助种便捷的运算方式计算圆周率该有多么艰辛,是否用了也不知道。

中国人在公元前虽然没有表示0的专门符号,但空位本身已说明中国人对零的认识。《旧唐书》、《宋史》用“空”字表示天文数据中的空位。现在朝鲜语在读电台频率、电报代码时仍把“零”读成“空”,如6010读作“六千空一空”。南宋《律吕新书》把118098记作“十一万八千囗九十八”,后来人们为了省事,把囗写成了0,这是13世纪的事。

古代埃及、印度用十进制,玛雅人用20进制,两河流域用10进制和60进制,玛雅人的数字有1—19和0共20年。0是贝壳形,这种贝壳正是中国和印第安人用作货币的海贝。表示数,由下而上,最下边表示“个”,往上是“20”,再往上是“400”、“8000”、“160000”......

1—9的表示法与算筹表示法相同,只不过立算筹变成了圆点。这一点值得继续研究。玛雅数词还有用头形表示的体系。玛雅碑铭最早是公元328年。

两河流域的六十进制用1—59记数,方法与20进制相仿,但没有0。六十进制用于时间和圆周的计算,沿用到现在。苏美尔人的图画文字出现于公元前3500年,正式记载历史始于公元前2300年。泥板文书上说,10位原始国王统治456000年,大洪水后23位国王统治24510年3个月3天半,难以置信。

罗马数字:
I V X L C D M
1 5 10 50 100 500 1000

相同数字并列表示相加。不同数字并列,左小右大表示相加,左大右小表示相减。数字上边一横,表示一千倍,1M(M表示两个1上面加一横)表示2x1000-1=1999。

夏威夷语、马克萨斯语仍保留四进制。美拉尼西亚语族,如斐济语,还在使用五进制古代秘鲁结绳记事,单结表示10,双结表示20。绳颜色、粗细、长短与结的多少、大小均表示不同的意义。


(二)语言与数

有词形变化的语言往往有数的范畴。英语有单数和复数。阿拉伯语多一个“双数”,如一个国王是malikun,两个国王是malikäni,多个国王是maliküna。我国的羌语、景颇语、土家语、拉祜语、载瓦语、阿昌语、格曼语、独龙语、布努语、佤语、德昂语、布朗语等也有“双数”。有人说汉语的“双”也是双数的标记。日语、朝鲜语有词形变化,但数的形式不是必须的,不加表示复数的词尾,也一样表示复数。

英语名词有可数与不可数之分,其界限不很分明,所以学习时须逐个记。汉语中,家俱、行李、纸被认为可数,英语是不可数名词。物质名词、抽象名词也能转化为可数名词。有不定冠词的语言都少不了这些麻烦。

英语第二人称单数(你)和复数(你们)都是you,没有专门的“您”形式。法语“您”是tu,“你们”是vous,“您们”是vous,德语“你”是du,“你们”是ihr,“您”是Sie,S永远是大写。小写sie,表示阴性第三人称单数(与汉语“她”不对应)和“他们”、“它们”。俄语“你”是Tbl,“你们”与“您”同是 Bbl。但这些语言中,“您”在熟人间是不宜的,与汉语“您”的范围不一样。日语、朝鲜语人称代词更复杂。汉语人称代词单、复数正像汉语数词那样简明,复数加“们”就行了,人称代词加“的”相当于英语的物主代词,这样的构词法是非常科学的。

法语数词70-99保存了20进制的痕迹。70说成60和10,80说成4个20,91(quatre-vingt-onze)即“4个20加上11”。据一位翻译讲用法语表达数目时确实很难。
日语、朝鲜语自古借用汉字和汉语词汇,至今数词有两套,一套固有词,一套汉字词。如“一”,日语固有词读hitotsu,汉字词读ichi;朝鲜语固有词读hana,汉字词读il。表示较大数目时都只用汉字数词。越南古代也用汉字,借用汉语词汇,但越语数词仍用固有词。

汉语数字4位一级,有万、亿、兆等进率为一万的数词。欧洲语言一般是三位一级,有千、百万、十亿等进率为一千的数词。中国自古就对“兆”有“百万”和“万万”两种解释。现在日,朝仍以“兆”为“万亿”,汉语中以当“百万”讲居多。欧美也一样,biltion在英、德表示万亿,在美、法表示十亿,trillion在英、德表示10的18次方,在美法表示10的12次方。遇到有歧义的情形,写成具体的阿拉伯数字就解决了。


(三)汉语数字探源

汉语的数字是怎么来的?古今中外的学者提出出了种种推测。
前五个尤为明显。“十”只用一坚,与“一”的区别是算筹立与卧的区别,但与前述早期表示法相反,“一”横书,“十 ”纵书。“八”、“九”为曲线,不是算筹。

(2)手与手指。一至十均为可讲得通,详见唐汉《汉字密码》。

(3)生肖动物的象形。五至九,分别是猢(猴)、牛、鸡、马、狗的象形字。五表示长臂猿在树枝之间,上攀一枝,下踩一枝,不见头。六表示牛轭,带两条 拽绳。七表示鸡的爪印。八是马面省去两眼,只剩鼻梁,九是一只蹲着的狗。详见杨西海亮《史前基本婚制和中国十二属相史初探》。

(4)测日影的实践。五至九均为立杆测影的形象。五表示“阴阳在天地间交午”,即八角星图案的简化。六表示角,甲骨文象房屋形,表示“六合”。七表示截断,阳半年与阴半年平分。八表示相背,晷影相背。九表示穷尽,夏至冬至之时。具体的依据载于《周髀算经》,是七八九六之爻与历法实践统一的证明。

“十”中部有一点或短横是后起的。有人说“十”为穿有木针的纺轮形,因纺线时十指并用,用它表示十。而只写作一竖的字形怎么解释?有人说像神棍,可通天地。
“百”是“白”加画而成,借“白”的读音,唐汉认为白取自大拇指的指甲之形与白的特点。先民手脏,指甲盖白特别显眼,以此为“白”。
“千”是人腿部有一横线,本来表示“二十”,借为“千”字。
“万”是蝎子的形象(繁体),因蝎子聚集,表示很多。
甲骨文表示几十、几千、几万用合文,即在十、千、万字下部加画。

我国各地发现的距今8000年以来的陶器刻划符号,如果不是文字,也有可能是数字。半坡刻符有与甲骨文数字相似的符号,应为数字。系统研究这些符号,也许能找到汉字数词的源头。我赞同五至九为生肖动物象形的说法。阿拉伯语数字写法与汉字古文的“八”、“九”很相似,阿语数字1、2、3逆时针转90度也与汉字写法相似,6则是汉字古文的右半部分,阿语数字前身——印度数字与汉语数字是否接触过?


(四)阿拉伯数字探源

古巴比伦最早用小的楔形表示一,用大的楔形表示十。古埃及象形文字有一、十、一百、一万、十万、一百万的符号,“一百万”是一个吃惊的人形。阿拉伯数码正式名称为“印度阿拉伯数码”,因为这些数码是从印度传到阿拉伯的。

古代印度有两种数字符号,一是公元前7——公元前8世纪的婆罗门字母,用不同的符号表示1——9、10、20——90、100共5个符号。后来,演变为瓜亚尔数码和梵文天城体数码。这时的数码才是十进制计数法。773年,有一位印度天文学家把印度数字传给了阿拉伯,阿拉伯人结合希腊数字改造印度数字,产生了阿拉伯数码。印度数字没有“零”,阿拉伯人用点表示“零”。阿拉伯数码传入欧洲,到16世纪才形成现在的阿拉伯数字,而阿拉伯语、波斯语等语言仍用古老的阿拉伯数字。早在9世纪,印度数字就与印度天文学一道传入中国。由于筹算记数法与们置记数法完全一致,没有必要采用。13世纪现代的阿拉伯数码传入中国,由于同样原因仍未采用,这时中国也有了“0”。19世纪末,现代教育传入中国,阿拉伯数码才作为现代教育体系的一部分得到了推广。

中国数学史话 《二》