阴历是根据月相圆缺变化的周期(即朔望月)来制订的。因为古人称月亮为太阴,所以阴历又有太阴历之称。

在朔望月一节中已经指出,一个朔望月的平均长度大约是29.5306日(相当于29日12小时44分3秒),这样一个复杂的数字用起来当然很不方便。为了简化问题而且适用,就必须使历法的每个月(称为历月)只包含整数的天数。那么接近29.5306日的整数,显然只有9和30。如果取29H为1个月,它将短于朔望月大约半天,在使用过程中必然产生这样的弊病,即朔的时刻(即新月)每月逐渐推迟而如果取30日为历月的长度,它又比朔月大约长了半天,在使用过程中又会出现朔的时刻逐月提前的情形,时间长了还会出现一个月的月初和月末都是朔的错乱现象。为了使历月的平均长度等于朔望月的长度,而且还要使历月只包含整天数,古代的编历家们便在历法中交替采用四日和30日作为历月的长度。这方法实在巧妙,它既避免了繁琐,又保证了朔必发生在每月的初一。

历月的长短问题算是解决了,历年(即历法上采用的年长)是历法家必须要解决的第二个问题。历法家们自然会考虑到历年长度应尽量接近回归年的长度,因为这样才能比较真实地反应映春、夏、秋、冬四季的变化。根据这个原则,经过反复观测发现,12个朔望月累加起来的天数最接近回归年的天数,请看事实:

29.5(日)×11=324.5(日)比回归年约少41天。

29.5(日)×12=354(日)比回归年约少11天。

29.5(日)×13=383.5(日)比回归年约多18天。

这样,编历家们就将阴历的历年定为12个月,其中6个大月。(每月30日)6个小月(每月29日),共计354日。但是,还有问题,因为朔望月的实际长度为29.5306日,而阴历年的实际长度为29.5306(日)×12=354.3671(日),这个数字与354日相差0.3671,所以实际使用时,每过3年新月(即朔)又不在初一了。为了克服这种现象,就把第3年12月的29日改为30日,并称这一年为闰年。闰年有7个大月,5个小月,共计355日。

阴历作为一种历法,由于它与农业生产和人们的日常生活不相协调,所以当今世界上除了几个伊斯兰国家,因为宗教上的原因仍然使用外,其他国家一般已经废弃不用了。当然从历史发展的观点来看,阴历还是有其特点的。比如阴历的基本周期——朔望月,是月相变化的周期。阴历的日期表示着一定的月相:即初一是朔(新月)十五、十六是满月(望)初七、八是上弦月二十二、二十三是下弦月等等,这对于古人凭借月相判断日期是很方便的。