目前,我国使用的历法主要有两种:公历与农历。
我们现行的公历,是一种太阳历(又叫阳历),它是以地球绕太阳公转的运动周期回归年为基础而制定的历法,其历年近似等于回归年。
回归年的长度为365天5时48分46秒,即365.2422天。为了与回归年相吻合,在阳历里把一年定为365天,叫做平年;同时把一年分为12个月,其中1、3、5、7、8、10、12七个月为大月,每月分别为31天,4、6、9、11四个月为小月,每月分别为30天,2月为28天。这样每过四年差不多就要比回归年多出一天来,于是就把这一天加在第四年的2月里,这一年就叫做闰年,全年共有366天。从而每四年里就有三个平年一个闰年。
如果按照每四年一个闰年计算,平均每年就要比回归年多出0.0078天,经过四百年就会多算出大约3天来。为了使阳历年的长度与回归年更加吻合,所以每四百年中就要减少三个闰年。于是规定,公历年份是整百数的(即世纪年),必须是400的倍数的才是闰年,不是400的倍数的就是平年。也就是我们通常所说的:四年一闰,百年不闰,四百年再闰,四百年九十七闰。通俗地讲就是除去世纪年外,凡是年数能被四除尽的就是闰年,如2004年、2008年等。而世纪年,只有前两位数能被四除尽或年数能被400除尽的,才是闰年。如自1601年到2000年当中的1700年、1800年和1900年就是世纪年,其前两位数不能被4除尽,同样年数也不能被400除尽,所以这三个世纪年不是闰年,也就是从1601年到2000年400年中减少的那三个闰年。这样公历的历年平均长度与回归年只有26秒之差,3300年才差一日。
阳历的月份、日期都与太阳在黄道上的位置较好地符合,根据阳历的日期,在一年中可以明显看出四季寒暖变化的情况,例如3月21日是春分日,6月22日是夏至日,9月23日是秋分日,12月22日是冬至日;但它的月与朔望月无关,所以根据阳历的月,看不出月亮的朔、望、两弦。
我国现行的另一历法──农历,就是用严格的朔望周期来定月,又用设置闰月的办法使年的平均长度与回归年相近,兼有阴历月和阳历年的性质,因此在实质上是一种阴阳合历。由于它的制定是以月亮运动周期为主,同时又兼顾了地球绕太阳运动的周期,所以既能使每个月份基本与季节变化相符合,又使每一月份的日期与月相对应。
农历是中国的一种传统历法,又称夏历,民间也称阴历。农历固定地把朔的时刻所在日子作为月的第一天──初一日,即月初所在的日期是按太阳和月亮的位置来推定的,不是机械地安排的。这样就使一个月中任何一天都含有月相的意义,即初一是无月的,十五左右都是圆月的。一个月就以朔望月为主,朔望月的平均长度约为29.53059日,所以有的月份是30日,称大月;有的月份是29日,称小月。12个月为一年,一个历年共354日或355日。
这样历年的长度与回归年相差11日,为了能与季节时令相符,就通过每十九年安插七个闰月的办法来加以协调,即十九年中有十二个是平年,一个平年12个月;有七年是闰年,一个闰年13个月。这样19个农历年的总日数为(12年×12个月 7年×13个月)×29.5306日=6939.6910日,与19个回归年的总日数(365.2422日×19年=6939.6018日)基本相等,农历的月份和四季冷暖也就基本相符了。
那么,农历的闰月是怎样来设置的呢?
这要来了解一下二十四节气,因为闰月的安排是由二十四节气决定的。
二十四节气分为十二个节气和十二个中气,节气和中气相间安排。一般情况每月各有一个中气和一个节气,且每一中气都配定属于某月,不能混乱,即以含“雨水”的月份为一月;以含“春分”的月份为二月;以含“谷雨”的月份为三月;以含“小满”的月份为四月;以含“夏至”的月份为五月;以含“大暑”的月份为六月;以含“处暑”的月份为七月;以含“秋分”的月份为八月;以含“霜降”的月份为九月;以含“小雪”的月份为十月;以含“冬至”的月份为十一月;以含“大雪”的月份为十二月。由于两个节气的长度平均约为30.5日,而农历月平均只有29.5日,因而每月中节气所在的日期必然会较上一个月推迟1~2天。如此下去,总会有一个月只有节气而没有中气,我们就把这个没有中气的月定为“闰月”,作为该月所在农历历年多余的第13个月。既然节气严格按回归年长度周而复始地出现,根据上述规定来设置闰月,必然能保证农历历年的平均长度与回归年十分接近。
所以农历的置闰方法就是:十九年七闰,不包含中气的月份作为前一个月的闰月。