世界上的历法有三种:阳历、阴历和阴阳合历。许多人都认为农历就是阴历,其实这是错误的。农历不是纯粹的阴历,而是阴阳合历。
阳历:是以太阳的视运动周期,也就是地球绕太阳运动周期为基础的,因此叫做太阳历,简称为阳历。它的每一个历年都近似于回归年,每一个历年中的月份、日期都与太阳在黄道上的位置较好地符合,例如春分点永远在3月21或22日,不会有大的出入。阳历把一年分为十二个月。公历其实只是阳历的一种。古罗马的儒略(Julian)历和格里高(Gregorian)历也都是阳历,而格里高历(或称格里历)就是我们现在所说的公历。
阴历:是根据月相圆缺变化的周期(即朔望月)来制订的。因为古人称月亮为太阴,所以又有太阴历之称,阴历把月亮圆缺循环一次的时间算做一个月,12个月算做一年。阴历把月份分成大月和小月两种,逢单的月是大月30天,逢双的月是小月29天,一年共是354天。阴历每30年就要安插11年闰年,每逢闰年就在12个月多加一天,成为355天。使用阴历的唯一好处就是阴历上的每一个日期都可以知道月亮的形状。当今世界上除了几个伊斯兰教国家因为宗教的原因仍然使用阴历外,基本已经废弃不用了。
阴阳合历:同时考察太阳和月亮的运动,把回归年和朔望月并列作为制定历法的周期。
农历,是把朔望月的时间作为历月的平均时间,这一点上和纯粹的阴历相同。但农历运用了设置闰月和二十四节气的办法,其中的二十四节气就是把太阳的运动轨道等分为24份,使得历年的平均长度等于回归年,这样它就又具有了阳历的成分,它比纯粹的阴历好。所以,我国的农历是既与太阳运动有关,又与月亮运动有关的阴阳合历。