“节气”作为历法的补充,在春秋后期修订“四分历”时也已出现,到战国时期就有了完整的“二十四节气”。节气的设置是古人依据“地心说”的原理,将太阳一年中运行的路线设想成一个封闭的圆圈,称为“黄道”(亦称“天体赤道”)。再将“黄道”分作24等分,每一等分为一个节气,平均间隔14天左右,从而确立了“二十四节气”,即立春、雨水、惊蛰、春分、清明、谷雨、立夏、小满、芒种、夏至、小暑、大暑、立秋、处暑、白露、秋分、寒露、霜降、立冬、小雪、大雪、冬至、小寒、大寒。节气是依据太阳的运行轨道确定的,更能反映季节和气候的更替、变化,它与历法相配合,能更好地指导农业生产,因此也成为中国古代历法的重要组成部分。
自“四分历”制定后,便为后代社会所沿用。但“四分历”的置闰方法与季节的更替、变化不相适应,历法的纪月对农业生产没有实际的指导作用。为了解决历法的纪月与节候变化不相适应的问题,汉武帝于太初元年(公元前104年)下令“议造汉历”。在对20余人的18种改历方案进行辩论、比较后,最终选定天文家邓平的方案,命名为“太初历”。这部历法首次提出在没有中气(“二十四节气”是由12个节气和12个中气组成的,其中中气为雨水、春分、谷雨、小满、夏至、大暑、处暑、秋分、霜降、小雪、冬至、大寒)的月份置闰的原则和方法。
南朝时期的天文家虞喜在世界天文学史上首次发现“岁差”现象,祖冲之将这一研究成果应用于历法的修订,于刘宋大明七年(463年)编订出“大明历”,这部历法推算出的历年长度是365.24281481日,与近代天文学计算出的“回归年”长度仅差46秒。同时,还提出以391年为一周期,其间设置144个闰月的置闰周期,这使得农历历年的长度更加接近“回归年”。祖冲之还计算出历月的长度为29.21223日,与近代天文学测得的历月长度误差仅1秒左右。
北宋时期曾先后进行过5次大规模的天文观测,获得了更为精确的天体运行数据。在此基础上,宋代又多次修订历法。南宋天文家杨忠辅于庆元五年(1199年)修订出“统天历”,历年长度为365.2425日,欧洲1582年开始使用的“格利高里历”(亦称西历新历)才达到这个水平。这个成果在元代郭守敬修订的“授时历”中被吸收和使用,一直沿用至清朝。
中国古代每年的历书均由皇帝颁发,因此便有“皇历”之称
中国古代每一年的长度和置闰的时间均依据“黄道”,即根据所谓太阳围绕地球旋转运行的周期来确定。每年在冬至这天,朝廷掌管天文、历法的机构均要定时、定点观测太阳的位置,并与前一年观测的结果相对照,从而确定当年的时间长度是否与“黄道”相符。在此基础上,再修订第二年的历书,以确定大、小月和闰月。所以,中国古代每一年的纪月、纪日,都是一年一修订的。
中国古代王朝为了统一社会生活,特别是出于安排农事、征收赋税、派遣劳役等需要,便以每年的历书作为时间依据。中国古代每一年新制订的历书都是由朝廷向全国颁发的,但由于是在冬至后才开始修订来年的历书,待到修订完时,已经是农历的年底,因此中国古代每一年历书的颁布,都是在正月初一的“元日”朝上,这也是中国古代朝廷将“元旦”定为“大朝”的原因之一。
中国古代每年的历书均由皇帝颁发,因此便有“皇历”之称,且因皇帝颁发的历书是用黄纸做封面,故也称“黄历”。民间亦传说历书是黄帝发明的,或认为历法是依“黄道”编订的,所以也叫“黄历”。