阴历的历法完全根据月亮的运动,阳历则完全依据地球的绕日公转。我国沿用已久的农历并不是完全用阴历,也不是完全用阳历,而是两者并用。一方面,农历以月亮绕地球运行一周为一月,平均历月长度等于朔望月;这一点与太阴历原则相同,所以也叫阴历。另一方面,农历设置闰月以使历年平均长度尽可能接近回归年,同时设置24节气以反映季节的变化特征。农历集阴、阳两历的特点于一身,所以称为"阴阳历"。
阴阳历的历月长度和回历一样,有大小月之分:大月30日,小月29日,就是所谓月建。但农历历月的安排却不同于回历,回历中大小月机械地相间排列,而农历的月建大小则要经过推算后决定,比回历更为精密。农历规定月初必合朔,月朔之日定为初一。月建的大小取决于合朔的日期,即根据两个月朔中所含的日数来决定。由于两个朔望月的长度并不正好为59天,因而一年中的大、小月数也不一定相等,有时可能连续出现两个大月或小月,以使历月的平均长度尽可能与朔望月相近,其剩余的差数则依*闰月以及闰月月建的安排来调节。