属相与岁首

段时间,热播电视剧《芈月传》中曾出现过一个样式和字体都很古朴的简牍。这个很用心也很重视细节的影视道具却有一个很大的民俗历史错误——芈月的生辰八字。要知道,虽然战国时期已出现了多种占卜术,但只有干支纪日,没有干支纪年、纪月、纪时,所以根本不会有生辰八字!提起干支,不妨把属相、岁首等民俗历史话题也好好理一下。

其实一到过年,就会有各种人出来科普生肖属相转换的规则,言之凿凿地说立春是更换属相的界点,大谈所谓干支纪年与传统阴历年之间的区别。其中,不乏所谓的民俗学家和自然科学家,甚至连网上常见的年历转换的程序代码,也将立春作为干支年转换的计算规则,基本上形成了“众口一词”的局面,对正在成长的网民们形成持久的影响。大家会说:“这是常识,这是传统,这就是中华民族几千年来生生不息传承的文化哦。”每当看到类似的说法,笔者免不了要皱起眉头。

属相与岁首其实是一个跨学科的文化问题。这个问题扩展开来,会涉及很多复杂的天文、历史、民俗知识,甚至包括最新的考古成果,所以,哪怕是具有专业知识的人可能也不清楚全貌。笔者这篇文章也只是努力对相关事物进行一个简单的梳理和总结。

干支纪日

一般来说,人们把以地球围绕太阳公转周期为基础的历法称为阳历,把以月相周期为基础的历法称为阴历。而中国古代的历法,是参考了包括太阳、月亮、北斗七星、木星在内的各种天体的周期变化所形成的历法,因此可以称为阴阳合历。

古代习惯以十进制计数,以十日为一旬,用“甲、乙、丙、丁、戊、己、庚、辛、壬、癸”进行编号排序,这十个符号后世称为天干。

月相变化的一个周期将近三十天,十二个月近似于一个太阳回归年的长度。此外,木星的周期也近似十二年(实际上只有11.86年)。“十二”这个整数逐步抽象出来,以“子、丑、寅、卯、辰、巳、午、未、申、酉、戌、亥”排序,这十二个符号,后世称为地支。

以天干配地支标记日期,是为干支纪日。中国人自从使用甲骨文开始,就在使用干支纪日。殷墟曾经发现完整的六十干支表。战国古籍《世本》说:“大桡作甲子。”大桡是谁?《吕氏春秋》上说大桡是黄帝的老师,但黄帝在历史上是怎么样的情况?可惜我们没有任何第一手资料来描述他的事迹。

我们只知道,商朝的先公先王先妣都有自己的日名,就是美称加天干组成,后代一般在祖先日名对应的干支日期举行相应的祭祀活动。先秦文献记载中,夏朝末期几个夏王的称号里也带有天干,因此可以认为商朝甲骨文所用的干支纪日应该有更古老的起源。

干支纪日的起点是在何年何月何日?中间是否出现中断?这两个问题现在已难以考究。在没有可靠证据的情况下,我们一般默认干支纪日从殷商开始至今并未中断。