阴历大小月不是谁拍脑袋定的,而是看月亮:两次“朔”之间隔29天就是小月,隔30天就是大月,判断依据是定朔法算出的日月合朔时刻。你翻老黄历看日子,看到某个月二十九就没了三十,别以为是印错了,那是月亮走到位了。
月亮绕地球转一圈,从看不见到看不见,平均要5306天,这个数不是整数,麻烦就来了:日历不能有半天,只能把一个月排成29天或30天,排29天的叫小月,排30天的叫大月。
你可以把“朔”理解成月亮每个月打卡上班的起点,朔那一天,月亮正好走到太阳和地球中间,夜里几乎看不见月亮,农历初一就从这天起算,下一次朔再来,中间隔了多少天,这个月就是多少天。
朔望月的长度会小幅摆动,短的时候不到29天半,长的时候超过29天半,业内专家指出,这种摆动来自月球轨道椭圆、太阳引力扰动等因素,所以每个月的实际长度都得单独算,不能拿一个固定公式套到底,平均29.5306天只是长期均值,具体到某个月,可能偏长也可能偏短。
古代历法有过“平朔”和“定朔”两套办法,平朔是把朔望月取平均,按月轮着排大小月;定朔是实打实计算每个朔的准确时刻,朔落在初一的哪一刻,就从那儿起算,唐代以后,定朔逐渐成为主流,原因很实在:平朔用久了会和实际天象对不上,初一看不见月亮,老百姓拜月、看日子都别扭。
推算农历大小月,说白了就是算两次朔之间夹了几天,下面这三步是历算工作的通用路径,不涉及复杂公式,你照着理解就能明白老黄历为什么那样印。
朔的时刻要精确到分秒,靠天文观测和轨道计算得出,公开的《中国天文年历》会列出每年各月的朔时刻,紫金山天文台等机构发布的历书数据也是公开可查的,你手里如果有万年历软件,输入年份,查到“农历每月初一”对应的公历日期和时刻,那就是朔的位置。
把相邻两个朔的时刻相减,得到一个小数,比如某次朔在初一凌晨,下一次朔在30天后的上午,间隔就是30天多一点,历法上不看“多一点”,只看日期落在哪一天。
这里有个容易绕晕的地方:不是间隔接近29.5就四舍五入,实际排历时,要看朔落在初一的哪个时段,再结合连续月份的协调,行业里常用“合朔时刻所在日”来定月首,两个月初一之间差29天就是小月,差30天就是大月,你拿到任何一本通书,翻到月末看有没有三十,就能反推出这个月是大是小。
这套办法不需要你懂球面天文,但能验证市面上多数通书排得对不对。
很多人以为大小月像阳历一样,七月大八月大轮着来,阴历还真不是,行业共识认为,阴历大小月没有简单循环周期,因为朔望月长度本身在变,定朔法又要求逐月计算,所以会出现连续两个大月、连续两个小月,甚至一个大月接一个小月再接一个大月的情况。
你翻几年的农历会发现,连续两个大月不算稀罕,原因是朔的时刻每个月往后挪一点,挪着挪着就会把某个月的初一推到更晚,间隔凑成30天,反过来,连续两个小月也会出现,老辈人常说“农历月份没准头”,说的就是这个现象,不是历书印错了。
阳历大小月是按人为规则排的,七月大、八月大这类口诀背下来就行,和天体运行没有直接对应,阴历大小月是“算”出来的,月亮走到哪儿,月份就排到哪儿,一个靠规则,一个靠天象,这是两者最根本的差别,你查日子时如果把阳历的月份天数套到阴历上,十有八九会对不上。
| 对比项 | 阴历大月 | 阴历小月 |
|---|---|---|
| 天数 | 30天 | 29天 |
| 判断依据 | 两次朔间隔满30天 | 两次朔间隔29天 |
| 出现规律 | 无固定循环,可连续出现 | 无固定循环,可连续出现 |
| 月末特征 | 有三十 | 二十九为月末 |
网上常有人问“阴历大小月计算公式”,想找一个一劳永逸的算式,严格说,没有哪个简单公式能代替定朔计算,朔望月均值29.5306天只能做粗略估算,真要排历,得用天文算法算朔的时刻,近年来一些日历软件开放了农历接口,你输入公历日期,它返回农历月和大小月标记,这背后跑的就是定朔模型,不是背口诀。
闰月和大小月是两码事,但经常被混在一起问,闰月是“多出来的一个月”,大小月是“这个月有29天还是30天”,闰月本身也有大小月,判断方法和普通月份一样,看它从初一到下月初一隔了29天还是30天。
有人以为闰月就是大月,这不对,闰四月可能是小月,闰六月也可能是大月,全看朔的时刻怎么落,你查通书时看到“闰五月小”,别惊讶,那是正常排法。
农历用“十九年七闰”来协调回归年和朔望月,19个回归年约6939.6天,235个朔望月约6939.7天,两者接近,所以闰月安排能长期保持季节不跑偏,但闰月插在哪一年、闰月本身是大是小,仍要逐年逐月算,你给老人查生日,遇到闰月出生的,得先确认当年闰月是大月还是小月,再对照公历,不然容易差一天。
在传统易学语境里,朔是“阳生”的起点,望是“阴满”的节点,农历初一为朔,十五前后为望,大小月的变化让朔望在公历上的落点年年不同,搞风水择日、看黄历宜忌的人,常把初一、十五当作重要时间坐标,你判断大小月,本质上是在判断月亮走到哪个位置,这和古人“观象授时”的思路一脉相承,老通书里把大小月标得清清楚楚,不是为了好看,是让种地、祭祀、出行的人有个准头。
没有适合普通人手算的简易公式能保证准确,朔望月均值29.5306天可以用来估算,但实际排历要算朔的精确时刻,普通人判断大小月,最可靠的办法是查权威历书或天文年历,看相邻两个农历月初一相隔29天还是30天,手机日历里的农历标记也能用,但不同软件偶尔有差异,以中国科学院紫金山天文台发布的历书数据为准更稳妥。
因为朔的时刻每个月往后推移,当两次朔的间隔跨过30天,这个月就是大月,连续出现大月,说明那段时间朔的间隔都落在30天这一档,同样,连续小月也不奇怪,阴历大小月跟着朔走,不跟着人的习惯走,所以没有“必须一大一小”的规矩。
闰月大小月本身不直接决定节气,节气按太阳黄经每15度划分,和月亮运行是两套系统,但农历排月要把朔望月和节气配合起来,闰月的设置就是为了让月份不脱离季节,闰月是大月还是小月,会影响这个闰月里初一、十五落在公历哪一天,进而影响民间按农历安排的活动日期,查节气看公历日期更直接,查农历日子再看大小月,两者别混着用。