古人由于生活和生产的需要,很早就希望掌握昼夜、月相和季节的变化规律。于是,观测天象、制定历法便由此萌芽。历法,就是推算年、月、日的时间长度,探究它们相互之间的关系,并由此确定时间序列的法则。几千年来,全世界的历法主要可以分为三大类,即阳历、阴历和阴阳历。
阳历是以季节变化——即地球公转运动为基础制定的历法。地球绕太阳公转一周,就是阳历的一年,称为1个“回归年”,时间略长于365天。例如,现行的公历就是一种阳历。阴历是以月亮圆缺变化为基础制定的历法。月亮盈亏循环一周,就是阴历的一个月,称为1个“朔望月”,大致为29天半。如伊斯兰教历就是一种阴历。阴阳历结合了阳历和阴历的主要特点:1个月的天数大致等于1个朔望月,1年的天数又大致等于1个回归年。中国的农历就是典型的阴阳历。
麻烦的是,一方面,根据天象观测确定的年和月,所包含的天数都不是简单的整数或分数。例如,按季节变化确定的回归年实际长度为365.2422…日,按月相变化确定的朔望月实际长度为29.5305…日。而另一方面,实际使用的历法中,1年所含的月数和1个月所含的天数又必须是整数。制定历法,就是要尽量合理地协调这两个方面。这样,历史上制定的各种历法就会各有侧重和差异。
月相盈亏变化图Ⓑ
中国早在公元前约13世纪的殷商时代,已经采用阴阳历,年有平年、闰年之分,平年12个月,闰年在年终设置一个闰月,全年共13个月;每个月以新月开始,月有大、小之别,大月30日,小月29日,大小月相间,有时还会插入一个连大月,由此可见当时已经知道1个朔望月略长于29.5日。
当时,中国古人测定分至(春分、秋分、冬至、夏至)的日期,前后误差大致不超过10天。经过这样的安排,季节和月份的关系就基本上固定了。但是一年的开始,还要依据天象观测随时调整。
到了战国时期,公元前480年前后,出现了一类历法,将回归年的长度定为365 日,朔望月的长度定为29 日,并且在每19年中置闰7次一一这称为“闰周”。因其回归年所含日数的余数为1/4,故称“四分历”。后来在东汉时期又使用另一种四分历,所以前面那种又被称为“古四分历”。古四分历采用的回归年长、朔望月长和闰周数据,都是当时世界上的最佳值。它们之间的关系为:19×365 =(19×12+7)×29 。战国时期,各诸侯国使用不同的历法,如黄帝历、颛顼历、夏历等,也都是四分历,但起始年份和一年的首日各不相同。
古代希腊早先使用阴历,每年12个朔望月,大月30日与小月29日相交替,一年共354日。为了协调月份和季节,希腊人默冬于公元前432年提出,可在19个回归年中增设7个朔望月作为闰月,如此共含235个朔望月,其中大月125个,小月110个。与此相应的回归年平均长度为365.2632日,朔望月长度为29.53191日。后世把这一规则称为“默冬章”,即默冬制定的章法。
地球运动及二十四节气示意图Ⓒ