说起中国历史,人们总会说“上下五千年”,从考古发现来看,这一说法不算夸张。
但如果问中国有确切年代的历史,那只能从公元前841年算起。
那一年,周厉王犯了众怒,引起“国人暴动”,周定公和召穆公开始“共和行政”。
司马迁的《史记·十二诸侯年表》就是以这一年为起点,这一年往后,我们的纪年就没乱过。
此前的很多历史事件,在具体时间上都有争议,比如武王伐纣到底发生在哪一年?
说来有些滑稽,武王伐纣发生在哪一年我们不知道,武王伐纣发生在哪一天我们却知道。
中国古代有一套“干支纪日法”,什么时候开始的,我们并不确定,反正商朝就已经有了。
这套干支纪日法,独立于纪年,六十一轮回,我们一般认为它从来没断过,也从来没错过。
中国最早的一本书叫《尚书》,里面有一篇《牧誓》,是牧野之战前,武王给大家作的演讲:
武王戎车三百两,虎贲三百人,与受战于牧野,作《牧誓》。
时甲子昧爽,王朝至于商郊牧野,乃誓。
按它的说法,那是一个甲子日的黎明(时甲子昧爽)。
这说法可信吗?
1976年,我们在陕西临潼发现了一件西周时期的文物——利簋,上有铭文:
武王征商,唯甲子朝,岁鼎,克昏夙有商。
辛未,王在阑师,赐右史利金,用作旜公宝尊彝。
这几十个字有多种解读,但毫无疑问,它为“时甲子昧爽”提供了佐证。
不过,光知道牧野之战在甲子日是不够的,我们需要更多的信息判断它在哪一年。
于是接着翻书,发现两篇重要文献:
一篇是《周书·武成》(《汉书·律历志》引刘歆《世经》),一篇是《逸周书· 世俘解》。
这里本该有具体的考证、辨析,但本文的重点是介绍思路,所以直接看得到的信息:
惟一月壬辰旁生霸
越若来二月既死霸,越五日甲子
惟四月既望,越六日庚戌
所谓“旁生霸”、“既死霸”、“既望”都是月相。
“旁生霸”,指靠近新月出现那天,“既死霸”,指残月隐去后那天,“既望”指月圆后那天。
所以上面的信息翻译一下就是:
一月壬辰,新月出现;二月庚申,残月隐去;四月乙巳,月圆之后。
(这里不大严谨,我跳过了闰月、改正朔的问题)
理论上,有了这些信息,就可以推算武王伐纣是在哪一年。
但我们一般人肯定做不到,这里可以动用工具书《三千五百年历日天象表》。
考虑到武王伐纣应该在共和行政前两三百年,我们可以缩小查找范围。
最后,可以得到一个答案:这一年是公元前1044年,牧野之战那个甲子日是1月9日。
对这个答案不放心的话,我们还可以换个解题方法,验证一下。
《史记》的西周史可分两段,一段从武王伐纣到共和元年,一段从共和元年到(周幽王)十一年。
后一段各王年数是清楚的,所以我们确定共和元年是公元前841年。
前一段各王年数是模糊的,所以我们无法确定武王伐纣的年份。
可是,西周推行的是分封制,封国们有自己的纪年,我们可以从它们的纪年反推武王伐纣的时间。
比如说鲁国,鲁国的纪年保存得很好。我们现在知道共和元年就是鲁真公十四年,我们也知道鲁真公之前鲁国各个国君的在位时间。
我们可以借此推算鲁国的建国时间,再次省略过程:
-841-203+1=-1043年。
也就是说鲁国建国在公元前1043年,同时,我们又知道,鲁国是周公的封地,周公被封和武王伐纣隔不了多久。
所以,武王伐纣在公元前1044年是大致可信的,保守一点的话,可以在前面加个约字。