第1讲-第3讲
第一讲为什么要了解古天文历法 #
我国是世界上文明古国之一,先民出于农事需要,积累了丰富的天文学知识。随着文明的进化,这些丰富的天文学知识,必然反映到记载古代文化的书籍典册之中,遗留于后世。出土的殷商时代甲骨刻辞早就有了某些星宿名称和日食、月食记载。《周易》《尚书》《诗经》《春秋》《国语》《左传》《吕氏春秋》《礼记》《尔雅》《淮南子》等书更有大量的详略不同的星宿记载和天象叙述。《史记·天官书》《汉书·天文志》更是古天文学的专门之作。文史工作者随时接触古代典籍,势必常与古代天文历法打交道。如果对此一知半解或不甚了了,很难谈得上进行深入的研究。就是一般爱好文史的青年,有一定的古天文学知识,对阅读古书也是大有帮助的。
常识告诉我们,一切与古代典籍有关的学科,无不与时间的记载,也就是古代天文历法有关。清人汪日桢说:“读史而考及于月日干支,小事也,然亦难事也。欲知月日,必求朔闰;欲求朔闰,必明推步……盖其事甚小,为之则难。不知推步者,欲为之而不能为;知推步者,能为之而不屑为也。”(见《历代长术辑要》载《二十四史月日考序目》)可见,古人深知“推步”的重要和“推步”的甘苦。白寿彝教授也指出:“关于时间的记载,是历史记载必要的构成部分,年代学的研究是历史文献学研究的主要课题。”(《人民日报》,1980年12月30日)
当今的现状是,有关古天文之学众说纷纭,头绪繁杂,令人不知从何下手,欲读不能。一般著述往往博大疏浅,叙史而已,或者演算繁难,玄秘莫测,“不把金针度与人”。读者终书,竟无法找到打开古天文历法大门的钥匙,未免望之兴叹,视为畏途。此篇以基本的天文常识入手,依据本师张汝舟先生星历观点,深入浅出,意欲将古籍中需要涉及的古天文学问题,逐一展开讨论,希望能对校读古籍有所助益,且能由一般文史工作者自行独立推演年月日时,掌握一套基本的“推步”技术,为深入的研究打下扎实的基础。
一、时间与天文历法 #
中国古代,合天文历法为一事,历法以天象为依据,历法属于实用天文学的重要内容。所以,中国古代文学与年、月、日、时这些时间观念紧密相依。学习古代天文学,就从认识“时间”这个概念开头吧!
中央人民广播电台每日整点都发出“嘟——嘟——”的时间讯号,以此统一全国民用时间。全国各行各业都按这个统一的标准时间学习和工作。没有统一的时间观念,一切工作都无法正常进行,社会将发生混乱。可知,人类社会对于时间的首要要求,就是有统一的计量标准,不能各自为政,自行其是。远古时代,人类分为若干互不交往的群体,各有自己的一套计时方法。随着社会的进步,交流的频繁,彼此认识到生活在地球这个大家庭里,还必须有统一的国际标准时间来协调全人类的活动,才能促进社会的更大发展。
在古代,人们对于时间的精确度要求不高,最早是把一天分为朝、午、昏、夜四个时段,后来又分为十个时段、十二个时段,也就大体够用了。随着生产力的发展,要求时间的精确度越来越高。现代科学技术,更要求计量时间不能有一秒的误差。测定人造卫星的位置,如果误差1秒,就有7~8公里的差距。精密的电子工业,无线电技术,运输通讯,卫星、导弹的发射,要求的精确度都很高。因此,现代生活要求有精确的统一的时间计量标准,指导全人类的生产劳动。
时间不是人的主观臆造。时间是客观存在的与物质运动紧密相连的一种物质存在的形式。人们只能依据物质的运动来规定时间,寻找计时的单位。
我国古代,先民以太阳东升西落确定一天的时间,单位是日;以月亮的隐现圆缺定一月的时间,单位是月;以寒来暑往及草木禾稼的荣枯定一年的时间,单位是年。远古时代人们的时间计量单位之所以仍有作用,今天还在指导着人们的活动,就在于完全符合人类对时间计量方法的基本要求:既承认时间是物质存在的形式,又以有规律的、匀速的、周而复始的运动形式作为计量标准。这种从不间断的、匀速的、重复出现的物质运动形式,在人们的周围是存在着的,这就是日月星辰的出没所组成的若干天文现象。时间计量单位的确定完全以天象为依据,就是这个道理。尽管上古先民长期坚持“地心说”,认为日月星辰都在围绕着地球转动,但这种周而复始的物质运动形式却是古今一致的。
在所有的计时单位中,人们把地球自转一周作为计时的最基本单位——日,古人认为是太阳东升西落绕了地球一圈。月、年是比日更大的计时单位。时辰、小时、刻、分、秒,是比日小的计时单位。时、分是日的分数,古人称为日之余分。
明确了时间的计量单位,还有一个时段和时刻的问题。换句话说,通常所谓“时间”,包含着两个含义:一是指某一瞬间,即古人所谓“时刻”;一是指两个瞬时之间隔,即一个有始有终的长度。从时刻的含义出发,时间有早迟之分。从时段的含义出发,时间有长久与短暂之别。历法中的节气与节气的交替(交节),月亮运行在太阳、地球之间的平面上成一直线的天象(合朔),日与日的交接(夜半0点整)等都应该是指时刻而言,十分确切,具体到某时几分几秒的那一瞬间,毫无含糊。月亮最圆的时间,与合朔时间一样只有那么一瞬时。差一秒还不是最圆,过一秒也不可能最圆。电台报时的“嘟——嘟——”那最后特殊一响,就是时刻概念的具体化。而平常所说的几分、几小时、几日,都是指的一个时段,它必有一个起算时刻。计时的基本单位——日,是从夜半0点起算的,止于24点整。任何一个更长的时段,比如百年、千年,都必须明确它的起算时刻。任何历法都很强调它的起算点,都希望找一个理想的起算时刻作为它的初始,这就是历法之“元”,称“历元”。
我们的先民,十分重视时间,特别是与农事有关的天时,古籍中记载特多。其实,古人的“天时”,是指一年四季包括风、雨、雷、电等直接关系农事活动的自然现象,古人认为这些是上天主宰的,所以称为“天时”。
《孟子》云:“不违农时,谷不可胜食也。”
《荀子》云:“春耕、夏耘、秋收、冬藏,四时不失时,故五谷不绝而百姓有余食也。”
《韩非子》云:“非天时,虽十尧不能冬生一穗。”
《吕氏春秋》有:“夫稼,为之者人也,生之者地也,养之者天也。是故得时之稼兴,失时之稼约。”
《齐民要术》有:“顺天时,量地利,则用力少而成功多,任情返道,劳而无获。”
《农书》有:“力不失时,则食不困。……故知时为上,知土次之。”
这些典籍中所谓“时”“天时”,实际是指关系农事成败的气候。气候的变动,与时令的推移有关,也直接与天象关联着,所以也应视为古代天文历法的内容。
《说文解字》云:“时,四时也。”指的是春夏秋冬四季。据吴泽先生的研究,在殷墟甲骨文中,已出现春夏秋冬四字。春字字形像枝木条达的形状;夏字字形一像草木繁茂之状,一像蝉形,蝉是夏虫,被认为是夏的象征;秋字像果实累累,谷物成熟,正是收获之时;冬字则形如把谷物藏于仓廪之中。这四个字,都与农业有关。春种、夏长、秋收、冬藏,季节、时令都同农事密切相关。
时间,关系到人类社会的政治、生产、生活等各方面的活动。自古以来,我们的祖先就十分重视年、月、日、时的安排,创制了多种多样的历法;对各项活动发生的年、月、日、时也做了大量的准确记录,保存在浩如烟海的典籍之中。古史古事就靠这些年、月、日、时的记载有了一个清晰的脉络,我们据此研究古代人类社会生活的各个方面。如果没有年、月、日、时的记载,众多的典籍史料就成了一堆杂乱无章的文字记录,其价值也就可想而知。中国古代大量珍贵史料就是靠年、月、日、时的记载而保存下来的。我们还可以用后代的历法依据古籍中年、月、日、时的记载推演出当时的实际天象,解决历史上若干悬而未决的年代问题。如果没有关于时间的文字记载,这种推算也就无法进行。
二、天文与历法 #
什么是天文?什么是历法?这是首先应该弄清楚的问题。
《说文》云“文,错画也。象交文”,又说“仰则观象于天”。高诱注《淮南子·天文训》说:“文者象也。天先垂文象日月五星及彗孛,皆谓以谴告一人。故曰天文。”王逸注《楚辞》“象”字云“法也”。《易·系辞》:“天垂象见吉凶,圣人则之。”可见,天文就是天象,就是天法,就是日月星辰在天幕呈现的有规律的运动形式。它不以人的意志为转移,反而影响着支配着人类的各种活动。正因为这样,远古的人就视之为神圣,把天象看成是上帝、上天给人的吉凶预兆,敬若神明。历代君王重视天文,因为它是上天意旨的体现,它直接关系着人类的生产、生活,影响帝王统治权力的基础。
繁体曆法之曆,最早的写法是秝,后写作、厤,再后写作曆。《玉篇》曰:“稀疏秝秝然。”段玉裁以为:“从二禾,禾之疏密有章也。”《说文》释:“厤,治也。”“,和也。”《释诂》释:“厤,数也。”从这些释义看,就是均匀调治之义。从二禾,禾的生长受日月星辰运行的天象支配,即受日月运行所确定的季节的支配,所以秝、厤与天象有关。
秝,古书写作,表示人在有庄稼的地里行走,引申为日月运行及日月运行所确定的季节、时令等时间计量。首先,这种运行是有规律的,“疏密有章”;其次,还需要调治,要均匀地调治,使日月运行的时日彼此协调。所以,秝就是均匀地调治天象所显示的年、月、日、时等计量时间单位的手段。
《史记·历书》以厤为推步学,以象为占验学,把两者的区别说得清清楚楚。占验,当然指天象,指上天通过天象显示给人们的吉凶预兆。推步,就是对日月星辰,主要是日月的运行时间进行计算,使日绕地球一圈所形成的寒暑交替与月绕地球一圈所呈现的圆缺隐现彼此配合得大体一致。这就是制历,也就是推步学。
历是什么,简单说就是计量年、月、日的方法,就是年、月、日的安排。这种安排、计量的依据是天象变化的规律,是依据日月星辰有规律的运行来确定年、月、日、时和四季、节气,或者说推算天象以定岁时。作为一种纪时系统,目的只能是服务于人类的生产生活。
一般将历法之“法”,解释为制历的方法。不对。这个“法”,正如语法之“法”,指法则、规律。远古时代的夏商周,当然有它的年月日安排的方法,虽然还比较粗疏,但还有它那时的“历”以指导人的社会生产活动。这种历是否成“法”呢?如果确定一年为“三百有六旬有六日”(《尧典》),是不可能有规律地调配年月日的,还形不成“法”。只有到春秋中期以后,测量出一回归年为36514日,到战国初期创制、行用四分历,才可能有“法”可依,才称得上有了历法。有历法之前,都是根据天象的观测,调整年月日,随时观测,随时调整,这还是观象授时的时代。到了有“法”可依的时代,就有可能将天象的数据抽象化,就有可能依据日月星辰运行的规律,通过演算,上推千百年,下推千百年,考求、预定年、月、日、时。我国最早的一部历法——四分历,就具备了这种条件。 可见,历与历法不能混为一谈。什么是历法呢?历法就是利用天象的变化规律调配年、月、日、时的一种纪时法则。
历法与天象那么紧密不可分,正是我国古代历法独具的特点。在我国古代,历法就包含在古天文学之中,历法是古代天文学中一个很重要的领域。历法的普遍内容包括节气的安排,一年中月的安排,一月中日的安排以及闰月安插规则,等等。我国古代历法还有关于日食、月食的预报和五大行星运行的推算。总之,离开天文就无所谓历法,历法反映了大量的天文现象,历法中有丰富的天文学内容,历法就是古天文学的一个部分。我国古代合天文、历法为一事,就是这个道理。同样的原因,古人称天文历法为历算、星算、天算、星历……总是将天文、历法合在一起加以表述。
历法的内容,一部分属于实用天文学的范围,另一部分属于理论天文学的范围。测时与制历就是天文学为生产服务的主要工作。我国古代历法重视对天象的推算,不仅反映了对天文学的重视,也常常以此来考核历法的准确性。古代历法史上的多次改革,其直接原因之一就是由于日食等天象的预推出现了差误。从一定程度上来说,我国古代的编历工作,也就是一种编算天文年历的工作。由此可见,我国古代天文学家何等重视实践与理论的结合。
正因为这样,当我们谈到古代天文学,那实际已经包括了古代历法的内容。
三、天文常识 #
人类社会各个民族生活的地域不同,星象与季节的相应关系也不同,但是用天象定岁时都是共同的。古代埃及人重视观测天狼星,因为每年天狼星与太阳一起升起的时候,就预示着尼罗河要泛滥,而尼罗河泛滥带来的肥沃土壤,正是埃及人播种的需要。我国上古的夏朝,重视参宿三星的观察,每年三星昏见西方,就意味着春耕季节的开始,参宿就成了夏族主祭祀的星了。晚起的商族,着重观察黄昏现于东方地平线上的亮星,看中了心宿三星,最亮的心宿二就是“大火”。大火昏见东方,也正是春耕季节播种的日子。大火就成了商族主祭祀的星。所以《公羊传·昭公十七年》载:“大火为大辰,伐为大辰,北极亦为大辰。”何休《公羊解诂》云:“大火谓心星,伐为参星。大火与伐,所以示民时之早晚。”这里所谓“大辰”,就是观察天象的标准星,均指恒星而言。大火为大辰,是就商代而言;伐为大辰,是就夏朝而言;北极亦为大辰,当指以北极星为观察天象的标准的更古时代。于此可见,我国上古对于北极星的认识,起源更早。
现代天文学知识告诉我们,在太阳系里有水星、金星、地球、火星、木星、土星、天王星、海王星共八大行星围绕着太阳,按照各自的轨道和速度运行着。——古人凭肉眼观测,以地球为中心,早就认识了五大行星(金、木、水、火、土)并了解到它们绕地球一圈的时间,掌握了它们的运行规律。
地球绕太阳公转的同时,还在自转。公转一周为365.24219日,自转一周为24小时。由于地球自转轨道与公转轨道有23°26′的倾斜角,地球表面受到太阳照射的程度不同(直射或斜射,斜射还有角度的不同),便有了春夏秋冬四季冷暖的变化。
月球是地球的卫星,它围绕着地球旋转,运行一周为29.53059日,月球本身不发光,人们所见到的月相是月球对太阳光的反射。随着地球、月球与太阳相互位置的变化,月相也周期性变化着。当月亮的背光面对着地球,人们看不到有光的月面,即为朔日(阴历初一);当月亮的受光面全部对着地球,人们看到一轮满月,即为望日(阴历十五)。从朔日到望日,望日到朔日之间还有各种月相。人们根据月相变化和月亮出没时间,便知道阴历的日期。俗话说:“初三初四蛾眉月,初七初八月半边,十五十六月团圆。”这种以月相变化为依据,从朔到朔或从望到望的周期长度,叫朔望月,就是阴历的一个月。
每一个朔望月,月球都要行经地球和太阳之间的空间一次,如果大体在一个平面上,月球遮住了太阳射向地球的光线,就会发生日食;当地球运行到太阳和月球中间(每月有一次机会),如果大体在一个平面上,地球就会挡住太阳射向月球的光线,就要发生月食。因此,日食总是发生在朔日,月食总是发生在望日。古人特别重视日食的记载,认为是上天对君主的警告,是凶兆。古代天文学家还以日食检验历法的准确性,食不在朔,便据以调历。
前人是怎样以地球为中心表述日食、月食这些天象的?我们用曾运乾先生《尚书正读》注文来回答这个问题,至少可以给我们一些启发。注云:当朔而日为月所掩,是为日食。当望而月为日所冲,是为月食。又说,古人制字,“朔”“望”“有”均从月得义。朔字从月从屰(屰,不顺也)。月与日同经度而不同纬度,则相屰而为合朔。若同经度而又同纬度,则相屰而为日食。望,为月食专字。从月从壬(壬,朝廷也),取日月相对望也。从亡,遇食则有亡象焉。有,为日食专字。从月,月光蔽其明也。从又,一指蔽前,泰山不见也。则知日月食之由于蔽也。《说文》:“有,不宜有也。春秋传曰,日月又食之。从月又声。”段氏注云:“谓本是不当有而有之称,引申遂为凡有之称。”
古代先民只是直观地以地球为中心来观测天体的运行,这就是西方科学未传入中国之前我国古代长期行用的地心说。日月星辰的东升西落,实际是因为地球从西向东在转动。这种地心说并非全无道理。比如上和下,是一种比较的说法。在地球上的上与下,其实都是在和地球中心比较,拿地球中心做标准来比较是有道理的。舍此,就无所谓上与下。同样,国际通用的标准时自有好处,而各个地方时更为各地的使用者称便。道理都一样,地心说对观测者似更方便。古人想象,地球四周被巨大的天球包围着,所有的日月星辰都在天球上运行。太阳系八大行星,古人凭肉眼观测,以地球为中心,只能见到金、木、水、火、土五大行星,并掌握了它们各自绕地球一圈的时间及运行规律,记之甚详。古代典籍关于天象的记载,立足于地心说。古代星图、天球仪之类也据此成象。阅读古籍者不可不知。
四、历的种类 #
人类对天象进行观测以确定计时标准,其中观测的主要对象是日、月的运行,依据日、月的运行周期以制定各自的历法。迄今为止,世界上的历法可分为三类:太阴历、太阳历和阴阳合历。
甲,太阴历。它是以月球受光面的圆缺晦明变动为基础,利用月球运行周期(朔望月)为标准制定的历法。月亮运行的周期是29.53日,太阴历就用大月(30日)、小月(29日)相间,一大一小来调整。因为每两月有0.06日盈余,还需要配置连大月才能保证月初必朔,月中必望。太阴历以十二个朔望月为一年计算,共354日或355日。它把月相与日期固定地联系在一起,见月相而知日期,知日期亦知月相。这在上古,无疑给人们的生产和生活带来方便。其致命的弱点是,十二个朔望月(平年354日)与太阳的运行周期(即回归年长度365.2422日)不相吻合,太阴历每年与回归年有11日多的时差,积三年就相差34日。这就必将搅乱月份与回归年长度确定的春夏秋冬四季的关系,冷暖四季与月份的关系错乱,又会给人们的生产、生活带来困难。
从古代历史记载得知,世界上最早制历的国家都首先使用过太阴历,因为月球的盈亏变化对人类而言较为明显而又亲切。上古时代,日苦其短,年嫌其长,月的周期最能适应宗教仪式的需要,朔望月自然就占有了重要的地位。
伊斯兰教用于祭祀节日的回回历就是现存的唯一纯太阴历。回历以公元622年7月16日,即穆罕默德避难麦加的次日为元年元日,以朔望月计,十二月为一年,每月以月牙初见为第一日,单月30日,双月29日,大月小月相间,全年354日,不置闰月。由于十二个朔望月共354日8时48分34秒,每年多出8小时有余,积三年就多出一天有余。所以,回历每三十年共置十一个闰日。在三十年中,第2、5、7、10、13、16、18、21、24、26、29年为闰年,每年355日,闰日放在十二月。
由于太阴历和回归年的日差,回历的岁首和节日(如肉孜节、古尔邦节)寒暑不定,便是可以理解的了。
陈垣先生《二十史朔闰表》附有回历与公元历、阴历的日期对照,便于检查。
乙,太阳历。它是以太阳的回归年周期为基本数据制定的历法。欧洲太阳历是古罗马恺撒在公元前46年请埃及天文学家索西琴尼斯协助制定的,世称“儒略历”或“旧太阳历”。当时测得的回归年长度为36514日。因此,儒略历规定,每四年中前三年为平年365日,第四年为闰年366日,即逢四或逢四的倍数的年份为闰年。一年十二个月,单月为大月31天,双月为小月30天。起自3月,终于2月,与月相完全无关。因为罗马帝国每年2月(年终)处决犯人,视为不吉,所以减去一日,平年只有29日,闰年为30日。又因为恺撒养子屋大维(奥古斯都)生于8月(小月),又从2月减一日加到8月,变8月小为8月大(31日)。这样,2月即为28日(闰年为29日)。为了避免由于2月小、8月大而造成的7月、8月、9月三个月连大,又改为7月、8月连大,9月、11月为小月,10月、12月为大月。这都是人为的规定。
公元325年,罗马帝国召开宗教会议,决定统一采用儒略历,并依据当时的天文观测,定3月21日为春分日。
回归年长度为365.24219日,即365日5时48分46秒。而儒略历是以36514日,即365日6时为数据制定的。两者有11分14秒之差,长期积累就会形成明显误差(128年差1日),这在当时并不为人所知。到公元1582年,人们发现春分点竟在3月11日,与公元325年的春分点相差十日之多,即1258年间(325—1582)间差十日,相当于每400年误差3日。为此,罗马教皇格里高利十三世只好召集学者研究,改革儒略历,采取每400年取消3闰(即400年97闰)的方法,规定把1582年10月4日以后的一天算为1582年10月15日,所有百位数以上的年数能被400除尽者才能算闰年(如1600年,2000年)。这样,一方面纠正了儒略历的误差,另一方面又提高了太阳历的精度。改革以后的儒略历称为格里历,其精确度很高:
365×400+97=146097(日)
146097÷400=365.2425(日)
格里历这个回归年长度365.2425日比现代实测回归年长度只有0.0003日(即近26秒)之差,积累3320年才会有一日的误差。这对日用历来说,已是十分精确的了。
我国元代郭守敬至元十八年(公元1281年)制定的“授时历”,其回归年长度已达到365.2425日的精确度,比格里历早了三百年。
当今世界通用公元纪年,共同使用的就是格里历。而公元纪年并不开始于公元元年,而是开始于公元532年(据说基督就诞生在公元532年之前,532年正是我国南朝梁武帝中大通四年)。这是出于宗教的考虑。因为532这个数字正是星期日数7、闰年周期4和所谓月周(即一定历日的时间地球上看到月面形状变化的周期)19(年)的最小公倍数。每过532年,基督教的节日(比如复活节)又会是同一日期、星期和月相。因此,公元532年之前的公元纪年都是后来逆推而定的。
太阳历以回归年周期为依据,四季与月份的关系稳定。中国古历形成的二十四节气就比较固定地配合在太阳历的一些日子里。
埃及人在远古时代曾一度使用太阴历,后来因为尼罗河涨水对生产影响极大,需要预报涨水时期,而尼罗河水涨和夏至是在天狼星出现的第一天早晨同时来到。古埃及人知道太阳在天球上的运行与尼罗河的洪水期有关,所以特别注意太阳在一年中各时期的高度,以及日出、日没时间和方位。同时还精密地观测了天狼星及南河三等恒星的周年运动,发现了太阳运行周期——回归年长度为36514日。在公元前2000多年古埃及人就制定了以365日为一年的太阳历,而放弃了太阴历的使用。
格里历所代表的太阳历也有不便之处,一是每月天数不统一,二是完全排除了月相周期。因此,历法研究者曾提出不少改革格里历的方案,有代表性的方案有两种。
...