干支纪年与六十进制

借着对数字系统的研究兴致,我又研究了下我中华干支纪年法的奥妙。当然,这里说的只是冰山一角,并不能透彻地呈现干支纪年的奥义。

什么是干支?

所谓干支,是由十天干和十二地支组合而成,共六十对,称为六十甲子。看下面的表格。

天干
地支

不会读的,看下面:

  • 十天干:甲(jiǎ)、乙(yǐ) 、丙(bǐng)、丁(dīng)、戊(wù)、己(jǐ)、庚(gēng)、辛(xīn)、壬(rén)、癸(guǐ )

  • 十二地支:子(zì)、丑(chǒu)、寅(yín)、卯(mǎo)、辰(chén)、巳(sì)、 午(wǔ)、未(wèi)、申(shēn)、酉(yǒu)、戌(xū)、亥(hài)

10 天干和 12 地支按顺序搭配,天干按天干的顺序循环走下去,地支按照地支的顺序循环走下去。并由此产生了 60 个干支对。

甲子 乙丑 丙寅 丁卯 戊辰 己巳 庚午 辛未 壬申 癸酉
甲戌 乙亥 丙子 丁丑 戊寅 己卯 庚辰 辛巳 壬午 癸未
甲申 乙酉 丙戌 丁亥 戊子 己丑 庚寅 辛卯 壬辰 癸巳
甲午 乙未 丙申 丁酉 戊戌 己亥 庚子 辛丑 壬寅 癸卯
甲辰 乙巳 丙午 丁未 戊申 己酉 庚戌 辛亥 壬子 癸丑
甲寅 乙卯 丙辰 丁巳 戊午 己未 庚申 辛酉 壬戌 癸亥

为什么是60呢?

这其实是一个算术问题:用数字0-9代表天干,字母A-L代表地支,数字和字母各自按自己的顺序循环排列结成对,刚开始时是0A,1B,…,问经历多少对后再次回到0A?答案很简单,求10和12的最小公倍数即可,就是60。

经历 60 对后再次回到甲子,这就是六十甲子的含义。其中天干经历了6次循环($60\div10$),而地支经历了5次循环($60\div12$)。

第一个甲子年据说是始于黄帝纪年,约公元前 2697 年。近点说,上一个甲子年就是 1984 年。今年则是 丙申猴年。

补充一点:为什么丙申年是猴年呢?

因为十二生肖跟十二地支是对应的,它们的关系如下:

地支
生肖

如果用六十进制的角度看问题?

根据上一篇的博文,我们可以给出60进制的定义:底为60的60个符号表示一个数。还没看的可以点击看看:从十进制数谈到巴比伦数字系统

在干支纪年法中,有10天干和12地支,共22个基本符号,组合成60个字符。我们现在使用的公元纪年法是10进制的,以耶稣诞生为元年。

我们现在要探讨的是这两种历法中的数学联系。但问题是这两种历法的元年不一样,干支纪年法早在黄帝那时就有了,比公元历法多了 2697 年。$2697\div60 = 44\cdots57$,也就是说公元1年开始再过3年(即公元4年),公元历法第一次看到了干支历法的甲子年。换句话说,公元 4 年是甲子年。又或者说,公元历法后退 3 年就可以看作跟干支历法同一元年了。(仅仅是为了计算方便)

这给我们一种计算上的技巧,把我们要计算的公元年份减去 3 ,所得的数再用这种特殊的 60 进制表示,看个位就可以看出是干支历法种对应的年了。

比如:2016 - 3 = 2013。将2013转换成60进制,为:

$$(2013)_{10} = 33\times60^{1}+33\times60^{0} = (丙申.丙申)_{60}$$

注:$33\div10$ 余 3 代表天干的丙,$33\div12$余 9 代表申。这里仿照 IP地址的点分记法。

分隔符(.)前表示 60 的倍数来着,这里表示从公元4年开始经过了丙申(33)个甲子年,分隔符后面的丙申就是该年份(2016)的干支历法表示。

那么,问题来了,2020年你可以用点分记法写出它的干支历法表示吗?


本文标题: 干支纪年与六十进制
文章作者: Lshare
许可协议: ©署名-非商用-相同方式共享 4.0