书城人文史地中国传统文化研究——八卦、干支、生肖揭秘
5517200000028

三、“三正论”与商朝所用十二月火历

为了进一步说明殷墟甲骨上“月一正日食麦”的卜辞中的“一”和“正”分别是指火历的一月和阴阳历的一月、说明殷代确实存在着十二月火历和阴阳历,我们有必要对“三正论”做一番探讨说明。

三正论的记载最早出现在《史记》中。《史记·历书》云:“夏正以正月,殷正以十二月,周正以十一月。”即是说,夏、商、周三代所用的阴阳历,若分别配以月建,则夏历岁首当建寅之月,殷历岁首当建丑之月,周历岁首当建子之月。夏、商、周三朝历法的岁首便构成了中国古历中传统的三正。千百年来,三正论基本已为人们所普遍接受。

但是,夏、商、周为什么分别要以不同的月建为岁首呢?其答案人们至今都还不太清楚,以致于有各种不同说法与猜测。实际上,三正的由来与夏、商、周各自所使用的星辰历的年首都直接相关——所用阴阳历年首时间分别以各自所用星辰历的年首时间为准。

先说“夏正建寅”。

夏使用的十月参历以昏参中为岁首标志。

根据前面所说,尧舜时代昏参中时间是冬至后第25天、立春节前约20天。假定禹的儿子启建立夏朝的时间是在尧150年后,即约公元前约2100年,则夏初昏参中时间大约是冬至后第27天、立春节前约18天;假定商灭夏的时间是公元前约1650年,则夏末昏参中时间大约是冬至后第33天、立春节前约12天。

总的而言,整个夏朝期间,昏参中时间都在立春前的十几天中。

夏使用的阴阳历年首时间要与夏使用的十月参历年首时间一致,也就是也以距昏参中的时间最近的节立春节(夏初还没有二十四节气,但肯定已有四时八节,昏参中的时间距立春节比距冬至节近许多)为年首:从时间上说,就是以立春前后最近的一个朔日为新年第一天、为岁首;从汉时所说的“斗建”方面而言,因为立春节时斗柄正指向寅初附近(因为,汉时斗柄所指恰为秋分点,冬至傍晚时分斗柄指子,也就是说冬至对应于子中),故以“斗柄建寅”为第一个月的天象标志,也即“夏正建寅”。

再说“殷正建丑”。

前面说过,殷代使用的十二月火历以傍晚大火星位于正北方子位为岁首标志,而商初大火星位于正北方子位的时间是冬至节后的第16天,即小寒时节后1天。

殷代初期即开始使用的阴阳历年首时间要与殷使用的十二月火历年首时间一致,也就是以殷代初期傍晚大火星位于正北方子位的时间为年首:从时间上说,就是以小寒前后最近的一个朔日为新年第一天、为岁首;从汉时所说的“斗建”方面而言,因为小寒时节斗柄正指向丑初,故以“斗柄建丑”为第一个月的天象标志,也即“殷正建丑”。

最后来说说“周正建子”。

以十二地支纪月的星辰历最初的观测主星是大火星,但这个观测主星并不是固定不变的,北斗七星后来也曾充当过观测主星的角色:

帝尧时代,秋分点已离开大火星而开始位于房宿,但距离还不太远(约8°),因此还可以以大火星为观测主星,于是,商人就以大火星为观测主星、行火历。到了公元前11世纪周朝初期,尽管周民族原来使用的十二月太阳历(参见本书第七章第一节)会成为官方正统的历法,但由于惯性的作用,商朝时通行的十二月火历也还会在一定程度上被使用,只是观测主星会有所变化:此时的秋分点距大火星已有约25°之遥,若继续再以大火星为观测主星已有不便,而另一方面,由于此时的秋分点距离北斗七星的斗柄所指方向已不远——斗柄指向正北子位差不对正好是冬至时节,且北斗七星又很好辨认,于是人们就开始将北斗七星用作观测主星,根据北斗七星斗柄所指的位置作为不同月份的天象标志。

如果仿照“太阳历”、“太阴历”、“阴阳历”、“火历”、“参历”的叫法,以北斗星为为观测主星的历法不妨也可以叫作“北斗历”,它是仰韶文化晚期产生的以大火星为观测主星、以十二地支纪月的星辰历在新的历史条件下的一种新的表现形式。

很显然,“北斗历”以冬至时节斗柄指正北子位为岁首。

周代使用的阴阳历年首时间要与周代使用的“北斗历”年首时间一致,也就是以斗柄指正北子位为岁首:从时间上说,就是以冬至前后最近的一个朔日为新年第一天、为岁首;从汉时所说的“斗建”方面而言,因为冬至时节斗柄正指向子位,故以“斗柄建子”为第一个月的天象标志,也即“周正建子”。

“月令”是上古一种文章体裁,按照一个12个月的时令,记述政府的祭祀礼仪、职务、法令、禁令。月令以四时为总纲、十二月为细目,以时记述天文历法、自然物候、物理时空,王者以此来安排生产生活的政令,故名“月令”。

战国末期秦国丞相吕不韦召集门客所做的《吕氏春秋》就收录有一篇《月令》,而西汉戴圣编著的《礼记》也全文收录了此《月令》。《礼记·月令》中历法所涉及天象的实际观测年代,日本学者能田中亮研究认为在公元前620年前后一百年内。

《礼记·月令》将一年分为四季,每季又分为三个月,描述了每个月太阳在黄道上的位置和昏旦中星,其中的有关内容为:

孟春之月,日在营室,昏参中,旦尾中。

仲春之月,日在奎,昏孤中,旦建星中。

季春之月,日在胃,昏七星中,旦牵牛中。

孟夏之月,日在毕,昏翼中,旦婺女中。

仲夏之月,日在东井,昏亢中,旦危中。

季夏之月,日在柳,昏火中,旦奎中。

孟秋之月,日在翼,昏建星中,旦毕中。

仲秋之月,日在角,昏牵牛中,旦觜巂中。

季秋之月,日在房,昏虚中,旦柳中。孟冬之月,日在尾,昏危中,旦七星中。

仲冬之月,日在斗,昏东壁中,旦轸中。

季冬之月,日在婺女,昏娄中,旦氐中。

很显然,《礼记·月令》中的历法是一种十二月太阳历,它将全年划分为十二个月并详细说明了各月月初太阳在二十八宿的位置,而且,它的岁首也与《夏小正》相同,即也以“昏参中”为岁首标志。

西汉时期皇族淮南王刘安及其门客集体编写的《淮南子》则又在局部改动、另外增加一些内容的基础上全文收录了《礼记·月令》的内容。《淮南子·时则训》中的相关内容为:

孟春之月,招摇指寅,昏参中,旦尾中。

仲春之月,招摇指卯,昏弧中,旦建星中。

季春之月,招摇指辰,昏七星中,旦牵牛中。

孟夏之月,招摇指巳,昏翼中,旦婺女中。

仲夏之月,招摇指午,昏亢中,旦危中。

季夏之月,招摇指未,昏心中,旦奎中。

孟秋之月,招摇指申,昏斗中,旦毕中。

仲秋之月,招摇指酉,昏牵牛中,旦觜巂中。

孟冬之月,招摇指亥,昏危中,旦七星中。

仲冬之月,招摇指子,昏壁中,旦轸中。

季冬之月,招摇指丑,昏娄中,旦氐中。

上面所引述摘录的两部分内容中所包含的两种历法的不同之处仅在于:《礼记·月令》中是将不同的月份与太阳在黄道上的位置联系在一起,而《淮南子·时则训》中则是将月份与招摇所指向(即北斗七星第一、五、七颗星与招摇星连线的方向,与北斗斗柄的指向即北斗七星第六、七颗星连线的方向之间有约15°夹角,两者大致可以认为是一回事)的地支联系在一起。也就是说《礼记·月令》中的十二个月代表的是一种十二月太阳历,而《淮南子·时则训》中的十二个月则正是那种以北斗七星为观测主星、以十二地支纪月可称之为“北斗历”的星辰历,两者本质上是一样的,而且它们与中国的十二月阴阳历有着本质的区别。

需要注意的是:

《淮南子·时则训》中的十二月本来是一种星辰历,但由于在那之前阴阳历早已开始占据主导地位,而阴阳历每年大致也是十二个月,于是人们有时也将阴阳历的十二个月与北斗指向的十二地支联系在一起、将阴阳历与“北斗历”相比照,这样也就有了正月建寅、二月建卯等说法(实际上,阴阳历的十二个月与北斗所指的十二地支之间的对应关系不可能是固定不变的,因为,阴阳历的每个月平均约为29.5天,而北斗指向的每个地支大约代表30.4天,阴阳历的十二个月总天数为354天,而斗柄旋转一周总天数约365天,如果第一年正月斗柄指寅那么第三年正月斗柄就不会再指寅——只有通过闰月的设置才能不断纠正这种偏差)。于是,进一步也就有了日本学者新城新藏那样的错误认识——以为十二地支原本就是为了记录阴阳历的十二个月而产生的专用纪月符号。而郭沫若以甲骨文中的十二月都是用数字来纪月而无用十二地支来纪月的任何痕迹来反驳新城新藏,主张十二地支根本就不是纪月符号则又走得过远了,因为甲骨文中的十二月是阴阳历,阴阳历不以十二地支纪月并不代表星辰历的十二个月不用十二地支来记录。