人们通过对于日月星辰运行规律的观测与理解,便产生了对日、月、时(季节)、年这些周期性的认识。而这些认识的出现,又不是由一种天象决定的。月亮的圆缺,决定了月份这个周期,而日、季节、回归年(阳历年)的周期,则是由太阳的视运动决定的。这种自然规律就必然会形成两套历法系统——即阴历和阳历。
起初,人们是以月亮的视运动来确定季节和年这个时间周期的。但在实际使用中又出现了问题,即阴历十二个月的时间比一个回归年的时间少了十一天左右,这样不到三年就差一个月,古人便用闰月方式,即再加一个月的方法来调解阴历和阳历的误差。这是对太阴历的一项重大改革,可以避免年误差值积累太多而时令相差太大,影响农牧业生产。闰月的设置,已经从太阴历开始向阴阳合历转化。可以说是阴阳合历的雏形。
我国历法起源很早。甲骨文中已出现了有关历法的记载,就是后世所说的“殷历”。殷历已有了干支记日法,朔望月也有大小月之分,闰月的设置也出现了,但置闰的规律不明。可能是因为当时置闰并非自觉地按照一定的规律去设置,而仅仅是凭观察和体验的感性知识来安排。这种置闰方法直到宋代,还被一些少数民族使用着。宋代孟珙《蒙鞑备录》中提到鞑靼和女真人“每见月圆为一月,见草青迟迟,方知是年有闰月也”。以月圆记月,如果在草青月份,草却迟迟不青,就是这年有闰月,殷商时置闰大概用的就是这种观测物候的办法,可以看作是阴阳合历的初级阶段。
置闰虽然避免了阴历与阳历年误差值的过大,但它却还有个突出的问题。即置闰要置一个整月才能符合朔望月的规律,这样,一年的时间就会出现354天和384天这样大的差异。这对于农业生产非常不利。于是随着生产的不断发展和人们认识能力、抽象思维能力的不断提高,又经过观星定时令的阶段后,出现了以二十四气定时令的方法,二十四气形成了另外一套历法系统,也就是太阳历系统。这是我国两千年前独创的、纯粹的、其他各国都没有的一种太阳历系统。在我国历史上,形成了太阴历和太阳历两套历法系统,并行不悖,同时并存,这就是完整的阴阳合历。
《礼记•月令》的注疏记载说:
中数曰岁,塑数曰年。中数者,谓十二月中气一周,总三百六十五日四分之一,谓之一岁。塑数者,谓十二月之朔一周,总三百五十四日,谓之为年。这段话,很明显地说清了两套历法的区别。以十二个中气循环一周的时间为单位,也就是一个回归年,叫做“岁”,属于太阳历;十二个朔望月为一周期,就叫“年”,属于太阴历。我们现在称元旦为阳历年(古称“岁”),称春节为阴历年,就是这个道理。