分享

古代历法简梳(2)

 缠绵168 2023-02-27 发布于广西
四.西周和春秋的岁首
关于西周的岁首,我查了下西周史,如杨宽《西周史》、许悼云《西周史》等,又翻了几本天文历法专著,都没有找到专门论述,所以只能结合一些论文,胡乱猜测如下。
1、西周的岁首。《左传·僖公五年》:“春王正月辛亥朔,日南至。公既视朔,遂登观台以望而书,礼也。凡分、至、启、闭必书云物,为备故也。”这是一则典型的以冬至建子的实例,鲁承周制,则周历也是以冬至所在月为岁首。
周人为什么不从大火历,而改以冬至所在月为岁首呢?大概原因如下:
第一,观象授时出现问题,因为岁差(当时人不知道),以前用作观测坐标的大火星位置、时间与殷历不配套了,这就逼着人们由观象→测算,正因当初由物候→观象一样。
第二,直到西周,才发明圭表测影的办法,这样才能确定夏至与冬至。《尚书·尧典》有“四仲中星”,“日中星鸟,以殷仲春。日永星火,以正仲夏。宵中星虚,以殷仲秋。日短星昴,以正仲冬。”用这四组恒星,黄昏时在正南方天空出现的来定季节。鸟星(星宿一)是仲春,昼夜等分,大火星(心宿二)是仲夏,白昼最长,虚宿一是仲秋,昼夜等长,昴星团则是仲冬,白昼最短。据研究,这最晚也是商末周初的星象。
第三,我以为是政治上的,周翦商后,认为天命转移,所以在最高信仰上,以“天”代“帝”,在历法上也需要别一下苗头,这种调整原因后来就被总结为,“王者始起”,“受命于天”,需要“改正朔”、“易服色”等等,这个“正”就是一年之首(正月),“朔”就是一月之首(初一)。
综上,西周以后,则开始琢磨制订新的历法。周人就选中一年中一个非常重要的时间,冬至,这一天,天地阖辟,白昼最短,黑夜最长,正类似于日落、月晦,推陈出新,所以周人对这一天非常重视,如《易经·复卦》象辞曰:“复,先王以至日闭关,商旅不行,后不省方。”所以将冬至所在的月份,定为岁首的正月。并且当时用十二支,所以我相信周人应该会将这个正月设定为地支中的“子”,“子”在一天的计时中表夜里二十四点,冬至与此天象的意义完全相同。所以,冬至→正月→子月,形成一个完美的配套。后来唐司马贞《史记索隐》时就明确提出:“唯黄帝及殷、周、鲁并建子为正。”清人顾观光《六历通考》更备论其义,他们认为岁首就应该定在冬至。
理论上虽如此,但事实上周历的岁首又往往不是冬至月,清末王韬早已指出,鲁僖公、文公以前多建丑(冬至日在正月前一月),以后多建子(冬至日在正月)。还有人据《豳风》“七月流火”,大火星的位置加以岁差计算,和春秋时日蚀的推算,可以决定周初到春秋初期的历是建丑,而不是建子。
其中的原因,是由于周人依然依靠测量确定至日,还不是推步历法,所以只有在测定冬至日以后,才能颁布第二年的历法,故而往往是以冬至后的第二个月为岁首,即建丑,也就是说,实践比理论上要晚一个月,甚至特殊情况下还会推迟到再下一个月,建寅。
2、春秋战国的岁首。这一套修修改改的周历,经过了几百年,到东周时,已成了一辆老爷车了,历法日期与当时四季的真实感受已经不一样了,比如《春秋·成公八年》(公元前583年)记载“二月无冰”,记录者的本意是认为这是个不得了的现象、大事件才记下来的。在我们今天看来,农历二月,就是公历三月,初春时节,冰销雪融,河里没有冰不是正常嘛,这就错了,《春秋》这个二月是周历二月,相当于我们现在的阴历十二月,也就是腊月,腊月无冰,这在北方是非常不正常的,所以才要记下来。
为什么会这样,我认为是由于天气变暖了,我们看竺可桢先生的五千年气候变化图:

商末周初是典型的寒冷期(下一次要到魏晋南北朝),所以那时历法制订时,肯定是与四季变化、人体感受相适应的,等春秋时气温升高,就不匹配了。

再比如《左传·哀公十二年》(公元前483年)记载:“冬十二月,螽。季孙问诸仲尼,仲尼曰:'丘闻之,火伏而后蛰者闭。今火犹西流,司历过矣。’”距上例已过一百年了,鲁哀公十二年冬天十二月,还闹蝗虫,季孙氏便问孔子,孔子很博学,说,以前一般是大火星下沉以后,就到了冬季,这些虫子都看不到了,现在大火星还在西沉,没有完全沉下,说明还在秋季,可是我们的历法都已经走了冬季十二月,这是司历官的过失啊。
所以这时就一股脑地出现多种历法,史称古六历,可惜后来都湮灭无踪了。显而易见,所谓的“三正”就是这时间冒出来的。其中的夏历,由于四季与月份相配合,是一个非常实用的新版本,但是又没有发生商周易代这样的革命,没有名义来推行,所以正好就着当时托古的产生的“夏朝”,将这个新版本托名为“夏历”,而这个新版本就成为后“太初历”的源头。
秦朝建立后,又改正朔,将岁首再往前提,叫建亥,也就是以今天的阴历十月为正月,这就更离谱了,与真实的四季不合,阴历十月即公历十一月,马上就冷死人了,怎么还叫春季呢。汉承秦制,也是这样,到汉武帝时已出现了“朔晦月见,弦望满亏”的错乱现象。所以不改不行了,于是汉武帝彻底把它废掉,在元封七年(公元前104年),改行落下闳、邓平等人制订的“太初历”,从此经过历代的局部修改,一直沿用至今。
附:关于三正,很多人都喜欢以下面这条为最早证据。《尚书·甘誓》“有扈氏威侮五行,怠弃三正。”唐代陆德明释文引东汉马融曰:“建子﹑建丑﹑建寅,三正也。”这是不对的,就算《甘誓》为真,夏启发兵攻伐有扈氏时,哪里知道未来会有商、周的存在,这完全是以后人解先人。不论《甘誓》是不是东周托古,都应将三正解释为三政,即正德、利用、厚生。

五.纪年

我们今天会觉得,以自然序数来纪时,不是最自然最简单嘛,古人为什么要费那么多劲,搞出那么多方式。事实上,纪时是相当复杂、困难的,出于很多原因,纪时的方式在历史上一直在不停修正,所以才愈演愈繁。
从大处说,纪年有两种标准,一是以天象命名,二是以人王命名。
1、天象纪年。一是干支纪年。十天干:甲、乙、丙、丁、戊、己、庚、辛、壬、癸。十二地支:子、丑、寅、卯、辰、巳、午、未、申、酉、戌、亥。配对规则是单配单、双配双,取其最小公倍数,遂以六十为一甲子。为什么用它,后文再说。
我们今天看农历,都是用干支来纪年,就会想当然自古就这样,其实不然,天干地支这个称呼是东汉时才确定的,以前也叫天母地子、天日地辰之类,东汉元和二年(公元85年)官方才正式使用这种纪年法,现在看到的在此之前的干支纪年,都是后人逆推上去的。
关于干支的起源,现在还没有定论,我觉得干支一定与天象紧密联系,具有极崇高的神圣感,这样才能超越自然序数成为纪时的命名。比如十二地支,就是将黄道十二等分。然而天干是什么,有说是五行再加阴阳,有说是十指形成的十进位制,有说是天有十日,我觉得应该和夏小正、彝族历法的一年十个月有关,待考。
二是岁星纪年。这种观象授时在逻辑上应该是最古老的纪年法之一。郭沫若认为在殷商以前已有岁星纪年,有文献可查的是公元前365年(周显王4年)即有岁星纪年的记载。但实际上岁星纪年系统产生于公元前400-360年之间。由于岁星运行一周不是完整的12年而是11.8622年,并且当时人还不知道岁差(直到晋代虞喜才发现),所以他们就会错误的逆推补上以往的岁星纪年,今人就可以凭这种错误推定其产生时代。
所谓岁星,就是木星,因为木星每12年在空中绕行一周,每年移动周天的十二分之一,古人把木星所在的位置作为纪年的标准,所以叫岁星。先民就将黄道附近的一周天按照岁星运行方向,自西向东划分成了十二分,每一星空区域都有一个特定的名称,即十二次,分别为星纪、玄枵、诹訾、降娄、大梁、实沈、鹑首、鹑火、鹑尾、寿星、大火、析木。
但是这个岁星在天上是右行,与其它的天象左行不同,很别扭,另外岁星不是完整的12年,而是11.8622年,因此岁星纪年86年会出现一次误差,需用超辰法加以改进。所以后来就虚构了一个“太岁星”,是左行的,正好与岁星相对而行,并且是完整的12年,正好修正了这个误差,又给它的轨道取得十二个名称,用来纪年,即困顿、赤奋若、摄提格、单阏、执徐、大荒落、敦牂、协洽、涒滩、作噩、阉茂、大渊献。
这个太岁纪年既能和地支相匹配,后来西汉时又有好事者,将太岁纪年取个新名叫“岁阴”,又给十天干也配上奇怪的名字:阏逢、旃蒙、柔兆、强圉、著雍、屠维、上章、重光、玄黓、昭阳,叫做“岁阳”。如同“天干+地支=一甲子”这个模式一样,搞出一个“岁阳+岁阴=一甲子”的新纪年模式,其实就是干支纪年的一个别称而已。《资治通鉴》就用这个纪年法。
要说明的是,这两套名称一看就不属于甲骨-金文体系,必是吸收了外来的音译词,老郭认为来自巴比伦,摄提格解释为大角,对应西方的“少女宫”,法国学者沙畹(Edouard Chavanne,1865-1918)更早提出。1999年,语言学家聂鸿音先生指出这十二个岁名全部可以与藏缅语进行对应。这个大概是真相,从藏族传来。
2、人王纪年。如周代用“某王多少年”这样的方式,比较直观,如周成王三年之类,新王再从头计算。后来又有年号,如开元几年、靖康几年之类。
岁阴岁阳纪年因为太繁琐,后来就渐渐不用了,人们往往又喜欢用“年号+干支”这样的组合来纪年,如《兰亭集序》开篇就是“永和九年,岁在癸丑,暮春之初,会于会稽山阴之兰亭”。

纪月

商代人用序数纪月,见前文所引甲骨卜辞。但后世越搞越繁,改用干支纪月。史学界一般认为春秋时代开始以十二辰纪月,称月建。一年十二个月与地支十二辰相配合,因而定下:正月为寅、二月为卯、三月为辰、四月为已、五月为午、六月为未、七月为申、八月为酉、九月为戌、十月为亥、十一月为子、十二月为丑。每月的地支与十天干相配就成为干支纪月法,60个月循环一周,也就是5年为一个周期,周而复始循环不止。遇农历闰月时,以交节时刻为界限,在交节以前归上月干支,交节以后属下月干支。歌诀是:“甲己之年两作首,乙庚之年戊为头,丙辛必是寻庚起,丁壬壬位顺流行,更有戌癸何分觉,甲寅之上好追求。”这首歌诀可使我们由纪年干支推知出当年月的干支。
这里就涉及一个“北斗建月”的问题。如前所说,先民将黄道南北附近的一周天十二等分,由东向西配以子,丑,寅,卯,辰,巳,午,未,申,酉,戌,亥十二地支,由此形成了十二辰。然后再次12个月与之相匹配,就叫建某月,如建子月、建丑月等等,建就是联系、建构的意思。那具体而言,如何一一对应呢?这就需要北斗七星的登场。
古人一开始是用初昏时北斗的斗柄所指的方向来决定季节。如《鹖冠子》:“斗柄指东,天下皆春;斗柄指南,天下皆夏;斗柄指西,天下皆秋;斗柄指北,天下皆冬。”《礼记·月令》:“观斗所建,命其四时。”

春秋时,又拿它来建月,我们按照以北极帝星为坐标,正北,此为十二辰中的 “子”,如果斗柄指子,则为建子月,即周历的正月(现在农历的十一月);斗柄指十二支中的丑,为建丑月,即殷历的正月(现在农历的十二月);斗柄指十二支中的寅,为建寅月,即夏历的正月(现在农历的正月),依此类推。这样,北斗星就像挂在天上的一个大钟一样,指向天空中黄道大圈上的那些月份的“刻度”。按顺时针方向运转。

《史记》载“分阴阳,建四时,均五行,移节度,定诸纪,皆系于斗”。

《淮南子·天文》“紫宫执斗而左旋,日行一度,……反覆三百六十五度四分度之一而成一岁。”“帝张四维,运之以斗,月徙一辰,复返其所,正月指寅”。

后来,此在易经体系内又别有深义,《淮南子》:“阳气起于东北,尽于西南,阴气起于西南,尽于东北。”七斗体系,正月建寅,斗柄指向东北方的寅位,七月建申,则是西南申位,《周易参同契》“寅申阴阳祖”,也就是说北斗建寅、申的东北、西南是阴阳转化之地。
但是这一整套系统,南朝科学家祖冲之、清朝天文学家梅文鼎,都认为月建和斗柄所指方位没有关系。

七.纪日

商代是用天干地支来纪日,甲骨卜辞《合》37986记载了一份完整的干支表:
干支纪日,现存最完整的记录是从鲁隐公三年(公元前720年)二月己巳日开始,从此后直到清末,共计2600多年,从未间断。而且后世一般用“干支日+几月几日”这样的组合来纪日,就更加准确。
干支纪日的缺点很明显,不直观,那为什么还用它,而且从商代卜辞以来就这样记?这个真是百思不得其解,是不是如流行的说法,商人点错科技树了?不是。我们站在今天的角度,会想当然地认为,古人可以非常轻松地观察记录星相,从而确定时间,其实这是错的,确定月相时间的关系没有那么容易,相反,是非常困难的。我们先看一幅月相图:
我们前面说过初一为朔,事实上,这个字在甲骨文里是没有的,一直到西周金文都没有,为什么,因为在朔日这一天,即阴历每月的初一,月亮是看不见的。因为朔日当天月球恰好运行至太阳黄经等,月球在地球和太阳之间,和太阳几乎同时出没,在地球上是看不到月亮的。
按:太阳、月亮和地球有两次在一条线上,一是:太阳→月亮→地球,这样的排列,是朔,所以日食一般都发生在朔日。如果太阳、月亮、地球三者完全在一条直线上,那将出现日食,也就是月亮把太阳光全部遮挡了。但是由于太阳运行的轨道(黄道)和月亮运行的轨道(白道)之间有5度的倾角,所以造成平均每5次日月合朔中有4次月亮总是从太阳的上面或太阳的下面走过。
另一种排列,太阳→地球→月亮,日、月在东西方地平线上彼此相望,故叫望,这时月亮是满月,最大最亮最圆。
一直到初三,新月才会出现,所以初三叫朏日,就是一个会意字,月出,读作“fěi”音。故而只有到了东周以后,随着测量手段的发展,才能定下朔日,最早的关于朔日的记载是《诗经·小雅·十月之交》:“十月之交,朔月辛卯。日有食之,亦孔之丑。彼月而微,此日而微。今此下民,亦孔之哀。”

郑玄:“周之十月,夏之八月也。八月朔日,日月交会而日食。”何楷:“朔月,谓十月之朔日,即交之日也。”史绳祖:“朔,日也。而乃谓朔月,盖月朔之反辞也。亦犹《书》之月正元日,乃正月元日也。”阮元:“交食至梁、隋而渐密,至元而愈精。梁虞鄺、隋张胄元、唐博仁均、一行、元郭守敬竝推定此日食在周幽王六年十月建酉辛卯朔日入食限,载在史志。今以雍正癸卯上推之,幽王六年十月辛卯朔正入食限。”

朔是由月+屰组成,屰就是逆推的意思,从月出可见到满月,即从朏至望是12、3天,从望至晦是15、6天,于是人们便上朏日前逆推两天,得出了初一,朔,初二,既朔。
所以有人推测,西周历法有过一次从以朏为月首到以朔为月首的重大变革,其年代当不晚于公元前800年。这个也不是孤例,伊斯兰历将新月初现定为每月的第一天,即以朏日为初一,朔日则在月末前三四天。由此,我们也可以判定许多名义上很早的书都是后来人伪托的,如《尚书·太甲中》:“惟三祀,十有二月朔,伊尹以冕服奉嗣王归于亳。”
正因月相有变化,所以在纪日时,往往又会加上这些表示月相的词,这样就更清楚了。如《左传·僖公五年》“冬十二月丙子朔,晋灭虢”,此是说丙子是十二月第一天。又如《左传·襄公十八年》“十月……丙寅晦,齐师夜遁”,此是说丙寅是为十月的最后一天。
正因为朔日初一、既朔初二是看不见的,你想想,每月有几天晴夜看不见月亮,再加阴天下雨什么的,那怎么能分辨今夕是何夕?所以根据月相判定几号,这是严重靠不住的,还有大小月,又因为纪日最重要,因为每天都要用,故而殷人就在现实的月相测量之外,另立了一个符号系统,天干地支相配,六十日一循环,这样就可以不管现实的月相如何了。这个道理,和后来推步历法的出现是一样的道理,因为它摆脱了观象授时的技术束缚。

(待续)

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多