年月日时的干支分别是怎么推算的?
我们都知道历法中的年、月、日、时四个时间都有天干和地支,十天干与十二地支单双各自匹配形成六十个干支组合,称六十甲子。月时的干支是有一定规律的,而年和日的干支推算方法就复杂多了。
公元后的天干与公元纪年的数字是固定的,因为公元纪年数是十进制,天干也是十位一循环,于是我们从历来的天干纪年中一一对应出公元的个位数,即:0庚、1辛、2壬、3癸、4甲、5乙、6丙、7丁、8戊、9己。而年的地支有12位,逆推得出公元元年是辛酉年,因此地支的算法是:(公元纪年数+9)÷12所得的余数就等于相应的地支,余数对应地支:0亥、1子、2丑、3寅、4卯、5辰、6巳、7午、8未、9申、10酉、11戌。其中,其中加9后足12的直接对应地支数。
例如:公元14年(新莽天凤元年)的地支=(14+9)÷12=1余11(戌)。个位数4(甲),所以这年的干支是甲戌年。
公元前的天干地支算法又不同,公元前的天干从1庚开始,逆推分别是2己、3戊、4丁、5丙、6乙、7甲、8癸、9壬、0辛。公元前的地支算法是:10—(公元纪年÷12)的余数。其中余数不足11的和公元前12年以后的纪年直接对应地支数。
例1:公元前770年(周平王元年)的地支=10—(770÷12)余数=8(未),天干为0(辛),所以这年的干支是辛未年。
例2:公元前251年(秦昭襄王五十六年)的地支=251÷12=20余11(戌),天干1(庚),所以这年是庚戌年。
月的干支推算很简单,月的地支按二十四节气来算,大雪建子,小寒建丑,立春建寅,惊蛰建卯,清明建辰,立夏建巳,芒种建午,小暑建未,立秋建申,白露建酉,寒露建戌,立冬建亥。月的天干则跟着年干来推,干支年是以立春开始,开年第一地支是寅,所以甲己年从丙寅月开始,乙庚年从戊寅月开始,丙辛年从庚寅月开始,丁壬年从壬寅月开始,戊癸年从甲寅月开始。12个月按六十个甲子循环一次为五年,从甲到己中间刚好五年,所以甲己年的月令都是把甲子,乙丑两月划到上一年,到丙寅月开始交年。
日的干支推算更加繁琐,只能从当日干支往前推,如果算上一年或后一年同等公历日的干支就按照闰年每年干支往前推6位,平年每年往前推5位。如果要推任意一日的干支,则要考虑每4年一闰,128年加1闰,400年3闰,世纪数能被4整除的则要在这公元纪年数中加入余数×3的闰年,然后还要按当前干支用六十甲子来推,其方法相当复杂难懂。日的干支最方便的就是查万年历。
时的干支推算也很简单,23~01时为子时,以此类推,天干甲己日就从甲子开始,到乙亥结束。乙庚日从丙子开始,到丁亥结束。时从日寻和月从年寻一样的推算方法。只不过年以寅为始,月以子为始。