《梦溪笔谈》技艺--卫朴精于历术


【原文】 淮南人卫朴精于历术,一行之流也。《春秋》日蚀三十六,诸历通验,密者不过得二十六七,唯一行得二十九;朴乃得三十五,唯庄公十八年一蚀,今古算皆不入蚀法,疑前史误耳。自夏仲康五年癸巳岁至熙宁六年癸丑,凡三千二百一年,书传所载日蚀凡四百七十五,众历考验虽各有得失,而朴所得为多。朴能不用算推古今日月蚀 (1) ,但口诵乘除,不差一算 (2) 。凡大历悉是算数 (3) ,令人就耳一读,即能暗诵;“旁通历”则纵横诵之 (4) 。尝令人写历书,写讫,令附耳读之,有差一算者,读至其处,则曰“此误某字”,其精如此。大乘除皆不下,照位运筹如飞 (5) ,人眼不能逐。人有故移其一算者,朴自上至下手循一遍,至移算处则拨正而去。熙宁中撰《奉元历》,以无候簿 (6) ,未能尽其术,自言得六七而已,然已密于他历。

【注释】

(1)不用算:不用计算工具。古人以算筹为计算工具,有专用的盘,故后来称珠算工具为“算盘”。据现在所知,宋代珠算的算盘可能已比较流行,但仍常用算筹。又,从沈括本条的记录来看,卫朴晚年可能视力已很差,或者已目盲。 (2)一算:犹今言一个数。每个数都可看成是一次运算,故称“一算”。 (3)大历:指正式制定的历法书。 (4)旁通历:当是指历史年表一类的工具书。这类年表通常以历法年代(或称“长历”)与各朝代的纪年相对照,纵横交错列成表格,古人称为“旁行斜上”或“旁通”。历法的制定需要参考历史纪年。 (5) “大乘除”二句:指卫朴用算筹运算时,不用像现在列算式一样,一步一步摆下去,只按照数位放置或移动少量算筹,即可得出结果。犹如现在精于珠算者,不用从个位数打起,只从高位拨珠,后面的珠子稍作调整,便已得出结果。古人用算筹乘除,被乘数和被除数放在上边叫“上位”,乘数和除数放在下边叫“下位”,中间为运算的位置叫“中位”。 (6)候簿:候天的记录簿,即观测记录。

【译文】

淮南人卫朴精通历法,在这方面是不亚于唐僧一行的人物。《春秋》一书中记载了三十六次日食,历代历法学者通加验证,一般认为所记与实际天象密合的不过有二十六七次,只有一行证明有二十九次;而卫朴则证明有三十五次,只有庄公十八年的一次日食,与古今学者对日食发生日期的推算都不合,怀疑是《春秋》记错了。从夏代仲康五年癸巳岁到宋代熙宁六年癸丑岁,凡三千二百零一年,各种书籍所记载的日食共有四百七十五次,以往各种历法的推考检验虽各有得失,而卫朴所得出的合乎实际的结论要较前人为多。卫朴不用计算工具就能够推算古今的日月食,加减乘除都只用口算,却一个数都不会错。凡是正式制定的历法书,全都是一大堆计算程序和数字,卫朴叫人在耳边读一遍,就能够背下来;对于历表和各种年表,他也都能纵横背诵。他曾让人抄写历书,抄写完毕后,叫抄写的人贴着他的耳朵读一遍,有哪个地方错了一个数,读到那地方时,他就说“某字抄错了”,他的学问竟能精湛到这样的程度。他用算筹运算时,很大数字的乘除都不用一步一步摆下去,只照着数位运筹如飞,人的眼睛都跟不上。有人曾故意移动了他的一只算筹,他从上到下用手摸了一遍,到被移动的地方,又随手拨正而离开。熙宁年间制定《奉元历》,因为没有实际的观测记录,卫朴未能全部发挥他的才能和知识,他自己也说这部历法的可靠性大约只有六七成,然而已比其他历法要精密一些。