由前面的叙述可以知道,历法是人类进入农牧业社会以后的产物。当然世界上究竟哪一个民族制订了第一部历法,现在很难考证,但从有文字以来,各个民族、各个国家都制订了自己的历法。不过,如果将古今中外所使用过的种种历法加以分析不难发现,不论这些历法如何花样翻新,就其实质来说,不外乎三种,即阴历、阳历和阴阳合历。现在分别加以介绍。
阴历
阴历是根据月相圆缺变化的周期(即朔望月)来制订的。因为古人称月亮为太阴,所以阴历又有太阴历之称。
在朔望月一节中已经指出,一个朔望月的平均长度大约是29.5306日(相当于29日12小时44分3秒),这样一个复杂的数字用起来当然很不方便。为了简化问题而且适用,就必须使历法的每个月(称为历月)只包含整数的天数。那么接近29.5306日的整数,显然只有9和30。如果取29H为1个月,它将短于朔望月大约半天,在使用过程中必然产生这样的弊病,即朔的时刻(即新月)每月逐渐推迟;而如果取30日为历月的长度,它又比朔月大约长了半天,在使用过程中又会出现朔的时刻逐月提前的情形,时间长了还会出现一个月的月初和月末都是朔的错乱现象。为了使历月的平均长度等于朔望月的长度,而且还要使历月只包含整天数,古代的编历家们便在历法中交替采用四日和30日作为历月的长度。这方法实在巧妙,它既避免了繁琐,又保证了朔必发生在每月的初一。
历月的长短问题算是解决了,历年(即历法上采用的年长)是历法家必须要解决的第二个问题。历法家们自然会考虑到历年长度应尽量接近回归年的长度,因为这样才能比较真实地反应映春、夏、秋、冬四季的变化。根据这个原则,经过反复观测发现,12个朔望月累加起来的天数最接近回归年的天数,请看事实:
29.5(日)×11=324.5(日)比回归年约少41天。
29.5(日)×12=354(日)比回归年约少11天。
29.5(日)×13=383.5(日)比回归年约多18天。
这样,编历家们就将阴历的历年定为12个月,其中6个大月。(每月30日)6个小月(每月29日),共计354日。但是,还有问题,因为朔望月的实际长度为29.5306日,而阴历年的实际长度为29.5306(日)×12=354.3671(日),这个数字与354日相差0.3671,所以实际使用时,每过3年新月(即朔)又不在初一了。为了克服这种现象,就把第3年12月的29日改为30日,并称这一年为闰年。闰年有7个大月,5个小月,共计355日。
阴历作为一种历法,由于它与农业生产和人们的日常生活不相协调,所以当今世界上除了几个伊斯兰国家,因为宗教上的原因仍然使用外,其他国家一般已经废弃不用了。当然从历史发展的观点来看,阴历还是有其特点的。比如阴历的基本周期——朔望月,是月相变化的周期。阴历的日期表示着一定的月相:即初一是朔(新月);十五、十六是满月(望);初七、八是上弦月;二十二、二十三是下弦月等等,这对于古人凭借月相判断日期是很方便的。
阳历
阳历是按照太阳的运动来编算的,它的基本周期是回归年。这就是说阳历的一年以回归年为依据,但又不是简单地取回归年的长度为阳历年的长度。为什么呢?因为一个回归年的长度是365.2422日(即相当于365日5小时48分46秒),如果直接把它作为阳历的历年长度,就会发生如下现象:比如1979年从1月1日半夜零时开始,到了1981年就不是从1月1日半夜零时开始了,而是推迟了5小时48分46秒,即1980年是从1月1日早上5时48分46秒开始了。到了1981年将是从1月1日上午11时37分32秒开始。依此类推,连连累加,使用起来很不方便。为了简便适用,制历家们只取回归年的整天数(即365日)为历年的长度,并称为平年。可能读者会发问,那5小时48分46秒就弃而不要了吗?当然不是,历年多余的5小时48分46秒,累积四年就是23小时15分4秒,几乎等于1天了,因此就做了1条规定,即每经过4年要多算1天,这1年共计为366日,并称为闰年。4年增加1天还有问题,就是它又比回归年的实际长度多算了44分56秒。这个数字初看起来很小,但不要忘记“积少成多”这句名言,只要具体一算就会发现,积400年就要差3日呢!显然这样大的误差不容忽视。编历家们经过周密思考,一丝不苟地计算之后,想出了第2条措施:每满100年少闰1次,到第枷年再闰。这样规定之后,每400年中总共有97个闰年,历年的平均长度为365日5时49分12秒,与回归年之长仅有26秒的差误,累积3300年才差1日,可见精度是很高的了。
话说至此读者可能又会发问,又是4年一闰,又是400年置97闰,怎么知道哪一年是平年,哪一年是闰年呢?这个问题容易解决。具体说来就是,凡是公元年数能被4除尽的年(如1964、1972、1980年)就都是闰年,不能被4除尽的年(如1979、1981、1983年)都是平年。但是遇到世纪的年,能被400除尽的年(如1600、2000、2400年)才是闰年,不能被400除尽的年(如1700、1800、1900年)仍为平年。
以上讲的是阳历的历年。阳历的历月又是如何确定的呢?
阳历的历月数,大家都知道是12个月,但这种取法与朔望月毫无瓜葛,它只是承袭了阴历的办法也把一年分成12个月罢了。按平均分配的办法,历月长度应该为(365.2422÷12=)30.4368天。为了避免小数,阳历的历月也分大月和小月,大月31天,小月30天,平年7个大月,5个小月;闰年6个大月、6个小月。也许你已经注意到了,现在国际通用的公历的历月是:1、3、5、7、8、10、12月是大月31天;4、6、9、11月是小月30天;唯独二月份平年28天,闰年29天。这种参差不齐的安排难道其中有什么奥妙吗?尤其是2月为什么又是如此特殊呢?要将这个问题说清楚话可就长了,因为它涉及到阳历的由来。
现在国际通用的公历(即阳历)起源于古罗马。据说古罗马最先使用的历法,分1年为10个月,共计304天,后来由于受希腊历法的影响,才将10个月增为12个月,全年354天,比回归年短11天多。为了消除差数,使历法的日期和节令符合,规定每两年增加1个月,称为闰月,闰月只有22天或23天,将它安插在合适的地方。但是罗马帝国的统治阶级——僧侣却滥施权力,随心所欲地安插闰月,结果使得历法极端混乱,甚至寒暑颠倒,四时无序,所以有人曾幽默地讽刺说:“罗马人常打胜仗,但不知道胜仗是在哪一天打的。”这种不堪设想的混乱局面一直到公元前46年才结束,这年罗马执政官(即最高统治者)儒略·凯撒宣布了新历。
儒略·凯撒在埃及天文学家索西琴尼的帮助下制订了新历。新历完全不考虑月亮的圆缺变化,只以地球围绕太阳的运转周期为准则,所以它已经是一部纯粹的阳历了。由于新历是儒略·凯撒颁发的,故又称新历为“儒略历”。
儒略历规定全年分12个月,共计365天。每4年一闰,每个月逢单为大月31天,逢双为小月30天,这样全年就不是姬天而是366天了,需要去掉1天。应该从哪个月中去掉1天呢?据说古罗马时代,被判处死刑的人一律在二月份处决,所以人们认为这是一个令人不愉快的月,希望它快快过去,这样就从2月中减去了1天,于是2月就只有9天了,只有闰年才是30天。至于2月份变为28天则还有一段故事。