有的人自觉懂点历史,上来就说农历是德国传教士汤若望发明的,对这种故意装睡的人你是没办法叫醒的。可以肯定的是,农历是千百年来我国古人智慧的结晶。
古人是很聪明的,也很善于思考。夜观天象很容易就看见了月亮,经过长时间的反复观察,人们发现月亮总是在一定的时间内圆了又缺,缺了又圆,这个时间大约是29天半左右(一个朔望月),具体数字是29又499/940,约等于29.53085,与现代天文观测的结果29.53059相差无几,可以说是相当的精确。古人把这个数字称为朔策,这是根据“四分历”(啥是四分历,我们以后再讲)计算出来的。于是人们把月亮圆缺一周定为一个月。
一个月的天数必须要取整数,否则没办法计算日子,所以就规定了大小月,小月29日,大月30日交替排列。具体做法是取朔望月周期的平均数来计算,即“平朔法”。我们假设第一个子月为小月29天,这个月还剩下499/940天,放到下一个月里,那么丑月就为29又499/940 499/940=30又58/940天,取整数,就是大月30天,这个月还剩下58/940天,再放到下一个月里,那么寅月就为29又499/940 58/940=29又557/940天,取整数,就是小月29天……以此类推,就得到了每个月的长度。
这样一来,月亮圆缺12周就是一年,历时354.36708天。
古人在观察月亮的时候,也在观察太阳。人们每天看到太阳从东边升起,西边落下,天就黑了,第二天太阳从地平线再次升起,天就亮了,哦,新的一天又开始了,这就是“日”的由来。早在春秋时期,人们就已经测出了一个回归年的平均长度为365又1/4天,称为岁时,也就是从一个冬至到下一个冬至的时间。
这时候人们发现,一个回归年和一个阴历年的时间相差11天左右,不出三年就差了一个多月,为了让一年四季与月亮运行周期大致相等,这就需要在阴历年插入一个闰月。
用一个回归年的长度除以一个朔望月平均天数,就得到了12.36842个月,古人发现小数部分数值0.36842刚好可以用分数7/19来逼近,7/19是个无限不循环小数,其值为0.36842105…这便是19年7闰的规律。
根据历史学家和天文学家的考证,至少在春秋晚期,我国古人就已经摸索出了19年7闰的规律,也就是说在19年里加入7个闰月,就可以保证阳历和阴历的总长度大致相等。
根据月亮圆缺变化的周期,以一个朔望月平均长度为一个月,参考太阳回归年为一年的长度,并加入二十四节气,同时设置闰月以使平均历年与回归年相适应,这就诞生了农历。
伴随着科学技术的进步和民族文化水平的提高,我国古代历法进行了五次重大改革。
第一次是汉武帝太初元年(公元前104年)颁布的由落下闳制定的《太初历》。太初历内容丰富,其中包括历日制度、日月食周期、五星运行情况、二十四节气测定、二十八宿的天球坐标等等,为后世的制历提供了一个很好的范本。它还规定无中气的月为闰月的置闰规则,农历正月初一为岁首。