
干支纪年的推算方法.doc
4页A 干支纪年的推算方法 我们中国古代是以干支纪年、月、日、时 干,即十干: 甲乙丙丁戊己庚辛壬癸 支,即十二支:子丑寅卯辰巳午未申酉戌亥 干支纪年推算 方法一: 设定天干地支的对应数字如下: 天干:甲 乙 丙 丁 戊 己 庚 辛 壬 癸 4 5 6 7 8 9 0 1 2 3 地支:子 丑 寅 卯 辰 巳 午 未 申 酉 戌 亥 4 5 6 7 8 9 10 11 0 1 2 3 推算方法: 某年的天干就是这个年分的个位数所对应的天干,地支就是这个年分除以 12 所得余数的对 应地支如 1997 年,个位是 7,对应的天干是“丁”;1997 除以 12 余数为 5,对应的地支 是“丑”,那么,1997 年就为“丁丑年”再如 2000 年,个位数是 0,对应的天干就是“庚”; 2000 除以 12 余数为 8,对应的地支是“辰”,那么 2000 年就是“庚辰年” 方法二:首先记住六十甲子的序数 六十甲子表 01 甲子 11 甲戌 21 甲申 31 甲午 41 甲辰 51 甲寅 02 乙丑 12 乙亥 22 乙酉 32 乙未 42 乙巳 52 乙卯 03 丙寅 13 丙子 23 丙戌 33 丙申 43 丙午 53 丙辰 04 丁卯 14 丁丑 24 丁亥 34 丁酉 44 丁未 54 丁巳 05 戊辰 15 戊寅 25 戊子 35 戊戌 45 戊申 55 戊午 06 己巳 16 己卯 26 己丑 36 己亥 46 己酉 56 己未 07 庚午 17 庚辰 27 庚寅 37 庚子 47 庚戌 57 庚申 08 辛未 18 辛巳 28 辛卯 38 辛丑 48 辛亥 58 辛酉 09 壬申 19 壬午 29 壬辰 39 壬寅 49 壬子 59 壬戌 10 癸酉 20 癸未 30 癸巳 40 癸卯 50 癸丑 60 癸亥 推算方法公式:(所求干支的阳历年数—3)除以 60=商……余数 这里的余数即为所求干支年的序数,然后查上面的六十甲子表,与之相对应的干支即为所 求年干支 公元纪年与干支纪年的推算公元纪年与干支纪年的推算(2009-04-24 21:36:35)由公元纪年推算干支纪年法一:六十天干纪年法一览 甲子乙丑丙寅丁卯戊辰己巳庚午辛未壬申癸酉甲戌乙亥丙子丁丑戊寅己卯庚辰辛巳壬午癸未甲申乙酉丙戌丁亥戊子己丑庚寅辛卯壬辰癸巳甲午乙未丙申丁酉戊戌己亥庚子辛丑壬寅癸卯甲辰乙巳丙午丁未戊申己酉庚戌辛亥壬子癸丑甲寅乙卯丙辰丁巳戊午己未庚申辛酉壬戌癸亥表于公元前后的推算均适用,具体的方法如下:1,求公元后某年(设为 Y)的干支。
方法是:先以 Y 除以 60 得出余数,然后再减去 4,最后根据所得结果查表一中相应序数所对应的干支即为该年的干支例如求公元 1911 年的干支:1911÷60 余数为 51,减 4 后得 47,查表一 47 对应的干 支是辛亥,即 1911 年为辛亥年由于干支纪年 60 年一循环,当 Y÷60 的余数小于 4 时, 需借干支纪年的一个周期 60 之数,例如 1981 年除以 60 余数为 1,直接减 4 不够减,加上 60 之后再减 4 等于 57,查表一便知 1981 年为辛酉年余可类推2,求公元前某年(设为 X)的干支方法是:先以 X 除以 60 求其余数,再用 57 减去 所得余数,根据所得结果再查表一中对应的干支,即为该年的干支例如求公元前 221 年的干支:221÷60,余数是 41,以 57-41=16,查表一 16 对应的 是庚辰,即公元前 221 年对应的干支应为庚辰同样由于干支纪年的循环周期为 60 年,当 余数大于 57 时,也需再借 60例如求公元前 479 年(孔子卒年)的干支:479 除以 60 余 59,用 57 减 59 不够减,加上 60 之后再减 59 等于 58,查表一知该年对应的干支为壬戌。
其余可以类推 二:十天干与公元纪年个位的关系由于六十甲子是由十天干和十二地支依次搭配而成,十天干按顺序循环使用也就是 说,在干支纪年中,同一天干每十年出现一次,而公元纪年年数采用十进位制由此推知, 某天干必然和公元年份某一固定的尾数(个位数)相对应,于是得出十天干与公元纪年的 个位数对照表如下(表二):0987654321公元前辛壬癸甲乙丙丁戊己庚公元1234567890 根据表二,凡公元某年个位数为 7,其对应的天干必为丁,若个位数是 3,则对应天干是癸, 余类推;凡公元前某年个位数为 7,其对应的天干必为甲,若个位数是 3,则对应天干是戊, 余类推换句话说,凡干支纪年称甲某年(如甲子、甲寅)的,其对应的公元纪年的个位 数必为 4,若是公元前则应为 7,其余参照表二类推 三:十二地支与余数对应关系 无论是公元前还是公元后的任意年份,如果在除以 12 后所得余数相同,其分别对应的地支 也就应该相同具体的对应如下表:酉申未午巳辰卯寅丑子亥戌公元前01234567891011 公元申酉戌亥子丑寅卯辰巳午未也就是说,公元后任意一年,如果除以 12 后余数为 3,则该年地支必是亥;若是公元 前某年除以 12 的余数为 3,其对应的地支则是午。
若某年能被 12 整除,则对应的公元前、 公元后的地支分别是酉、申其余均可参照表三类推这样一来,如果觉得表一难以记忆的话,也可通过表二和表三分别推出公元前后任意 一年的天干和地支只要记住表二和表三,由公元推干支的问题也同样可以解决值得注意的有两点:第一,众所周知,完整的六十干支表早在殷商甲骨文中就已出现,通常认为六十干支 在当时已用于纪日,但这并不等于那时已用于纪年文献所见我国古代曾采用多种纪年方 法,如岁星纪年、以王公在位的年次纪年等著名的《春秋》一书就是以鲁国国君在位的 时间纪年真正以政府诏令的形式规定采用干支纪年已是东汉时候的事情了,距今还不足 二千年现在我们看到的各种历谱中在实行干支纪年以前的某年干支均为后人推算所加第二,由于我国古代的历法属于阴阳合历,按照传统历法制定的年历长度和现行公历 (即格里高利历 Gregorian calendar)及其前身罗马的儒略历(Julian calendar)之年历长度 并不相同,因此,有关公元与干支两种纪年的换算,说公元某年相当于某干支年,都只是 一种大致的对应而已,正如现在每年公历的元旦与农历的大年初一总是难以重合一样,这 一点也是应该说明的。
由干支纪年推算公元纪年法 二、由干支推公元 甲子乙丑丙寅丁卯戊辰己巳庚午辛未壬申癸酉甲戌乙亥丙子丁丑戊寅己卯庚辰辛巳壬午癸未甲申乙酉丙戌丁亥戊子己丑庚寅辛卯壬辰癸巳甲午乙未丙申丁酉戊戌己亥庚子辛丑壬寅癸卯甲辰乙巳丙午丁未戊申己酉庚戌辛亥壬子癸丑甲寅乙卯丙辰丁巳戊午己未庚申辛酉壬戌癸亥如前所述,由公元推干支往往只有一个结果,即公元前后某年相当于某干支年然而由 干支推公元情况就不同了尽管干支纪年 60 年一循环,但只要有一定的时间范围作为参照,由干支推公元的问题 即可以解决现假设这一参照系为 C,代表公元任意一个世纪如果是求公元二十世纪的 某干支年,则 C=20,余类推 设 100(C-1)÷60 的余数为 N,即:N=mod[100(C-1),60]若所求干支在表一中对应的序数为 P则求公元某世纪 C 的某干支年(对应于表一中的序数为 P)的公式可表述为:100(C-1)+{P-[N-4]}+30{1-sgn[P-(N-4)]}试举例说明:例 1,若求公元二十世纪的己亥年,则 C=20,P=35(查表一知己亥对应序数为 35) 首先由 C=20 算出 N=mod[100(C-1),60]的值为 40,即 100(20-1)÷60 的余数 N 为 40;然后将 C、P、N 的值代入上述公式,即100(C-1)+{P-[N-4]}+30{1-sgn[P-(N-4)]}=1900+{35-[40-4]}+30{1-sgn[35-(40-4)]}=1900-1+60=1959也就是说,二十世纪的己亥年为 1959 年。
例 2,求公元十九世纪(C=19)的甲午年(查表一知 P 为 30) 首先由 C=19 算出 N=mod[100(C-1),60]的值为 0,即 100(C-1)÷60 的余数 N 为 0;然后将 C、P、N 的值 代入上述公式,即100(C-1)+{P-[N-4]}+30{1-sgn[P-(N-4)]}=100(19-1)+{30-[0-4]}+30{1-sgn[30-(0-4)]}=1800+34+0=1834也就是说,十九世纪的甲午年为 1834 年在此需特别提醒的是:由于一个世纪等于 100 年,大于干支纪年的周期 60,因此,同 一世纪内有 2/3 的干支将出现两次,而另外 1/3 的干支(即位于每世纪的第 40 和 50 年代) 只出现一次当{P-[N-4]}+30{1-sgn[P-(N-4)]}的值小于或等于 40 时,表明所求干支年在同 一世纪内还将重现一次,这时需再加上 60 便可得出该世纪内另一个干支相同的年份上述 举例 2 推算十九世纪的甲午年时,{P-[N-4]}+30{1-sgn[P-(N-4)]}的值等于 34,小于 40,故 十九世纪的甲午年必然有两个:除了 1834 年外,还有 1834+60,即 1894 年(甲午战争) 。
而例 1 中推算二十世纪的己亥年时,{P-[N-4]}+30{1-sgn[P-(N-4)]}的值等于 59,大于 40, 故该世纪只有一个己亥年,即 1959 年上述公式对借一甲 60 之数的弥补采用的是符号函数,因此,只适用于当{P-[N-4]}的 值大于或小于 0 时如果{P-[N-4]}正好等于 0,则情况比较特殊好在其出现频率很低, 每 300 年中只有 2 次,即当 C=3K(K 为正整数)时的庚辰年,或当 C=3K+2(K 为正整数 或 0)时的庚子年,且必为该世纪的第 60 年(本文以“世纪年”作为一个世纪的结尾) 当然,也可以采用自定义的办法,将上述公式改写成:100(C-1)+[P-(N-4)]+60f{[P-(N-4)}设 f{[P-(N-4)]}={0 若[P-(N-4)]> 01 若[P-(N-4)]< =0如果不用上述公式进行运算,也可采用较为简易的心算如上述例 1 求公元二十世纪 (C=20)的己亥年(P=35)的推算可表述为以下步骤:第一步,由 C=20 算出 100(C-1)÷60 的余数 N 为 40;第二步,算出 N-4 的结果等于 36(注意:若不够减时需借 60) ;第三步,用干支己亥对应于表一中的序数(P=35)减去第二步所得的值 36,求出其 结果等于 59(同样,不够减时需借 60) ;第四步,用 59 加上 100(C-1) ,得出二十世纪的己亥年为 1959 年。
上述由干支推算公元的方法,可运用于历史时期的考古学研究尤其是在野外考察时, 对于有干支纪年的文物,在根据文物本身的特征推断出大致时代的情况下,可运用上述方 法得出较为确切的年份,而无须借助任何历史纪年表在对于两个以上不同干支纪年的历 史文物进行比较时,上述方法更有帮助至于公元前某世纪的某干支年,也可以用类似方法推导出来,只是具体推算略有不同 由于我国干支纪年主要是公元后的事情,对公元前干支的推算本文暂从略。












