一、天干地支算法
首先我们先要明白天干与地支是如何搭配的 天干:甲、乙、丙、丁、戊、己、庚、辛、壬、癸 地支:子、丑、寅、卯、辰、巳、午、未、申、酉、戌、亥。十天干与十二地支按顺序两两相配,从甲子到癸亥,共六十个组合,即六十甲子。(10与12的最小公倍数是60) 甲子乙丑丙寅丁卯戊辰己巳庚午辛未壬申癸酉甲戌乙亥 丙子丁丑戊寅己卯庚辰辛巳壬午癸未甲申乙酉丙戌丁亥 戊子己丑庚寅辛卯壬辰癸巳甲午己未丙申丁酉戊戌己亥 庚子辛丑壬寅癸卯甲辰乙巳丙午丁未戊申己酉庚戌辛亥 壬子癸丑甲寅乙卯丙辰丁巳戊午己未庚申辛酉壬戌癸亥 序号 天干甲乙丙丁戊己庚申壬癸 序号 地支子丑寅卯辰巳午未申酉戌亥 年是甲午年,那么年的天干是乙,依此类推,年的天干就是庚;同样,年的地支是午,年的地支就是子;所以年是庚子年。如果大家还想到年八国联军胁迫清政府签订了《辛丑条约》,就是年是辛丑年,那么天干与地支的序号都往前推一下,也可以推出来年是庚子年。(《辛丑条约》中的所涉及的赔款因为是针对年庚子年的义和团运动而规定,所以也叫庚子赔款。) 如果没有告诉你相邻的某个年份是什么年,那么又怎样推算呢?比如,年用干支纪年应是?年用干支纪年应是? 这里有一个计算的公式:NX360m0≦N﹤60m是一个自然数 N是60个干支的序号,比如N1时就是甲子,X就是公元某某年。 那么按照这个公式,年的序号就是:m那么就取m29这样N58,如果取m30的话,N2,这时就要加60,也就是说0≦N﹤60如果N0,那么就是第60个干支。现在知道与年对应干支是第58个,但是如果没有上面那个表格可供查阅,怎么办呢?我们知道天干是10个,地支是12个,10天干与12地支按顺序两两相配,那么第58号对应的天干的序号应是58÷10的余数,余数是8,第八个天干是申;同样,第58号对应的地支的序号是58÷12的余数,余数是10,第十个地支是酉,所以年是农历辛酉年。 所以天干的序号10地支的序号12 大家就是对于m应该取多少,不用去想,很简单,就像小学生列除法算式一样,N3那个数除以60所得的商数就是m余数就是N 注意:这里的公式只适用于公元后的年份 公元前的计算公式应是NX260m,(因为公元前1年后就是公元元年也就是公元1年,没有公元0年),X就是一个负数了,m也取负数 不过不知道这个公式是否准确。前面的公式NX360m来源于《简明天文学教程》作者余明;出版社科学出版社。
|
以上数据内容来源于:百度天干地支算法、搜狗天干地支算法、360天干地支算法 |
二、天干地支最正确的算法
天干地支的计算方法 (年份3)10余数对天干如,除以10余数是1即为甲 (年份3)12余数对地支如,除以12余数是7即为午即年是甲午年 天干地支简称“干支”,取义于树木的干和枝 天干有十:甲、乙、丙、丁、戊(wù)、己、庚、辛、壬(rén)、癸(guǐ);地支十二:子、丑、寅、卯(mǎo)、辰(chén)、巳(sì)、午、未(wèi)、申、酉(yǒu)、戌(xū)、亥。天干地支组合成如下六十个计时序号,作为纪年、月、日、时的名称,叫“干支纪年法”。 编辑本段六十甲子顺序110甲子乙丑丙寅丁卯戊辰己巳庚午辛未壬申癸酉甲戌乙亥丙子丁丑戊寅己卯庚辰辛巳壬午癸未甲申乙酉丙戌丁亥戊子己丑庚寅辛卯壬辰癸巳甲午乙未丙申丁酉戊戌己亥庚子辛丑壬寅癸卯甲辰乙巳丙午丁未戊申己酉庚戌辛亥壬子癸丑甲寅乙卯丙辰丁巳戊午己未庚申辛酉壬戌癸亥用六十甲子依次纪年,六十年一个轮回。 干支纪年法的新一年由立春开始,年的立春是二月四日,所以年2月4日立春之后才是己丑年,在此之前应是戊子年。公元纪年的一年以立春为界前后分属不同的干支纪年,这一点不熟悉的人容易搞错,应特别注意。编辑本段与公元纪年的换算第一种算法:如何将公元纪年换算成干支纪年:不同资料算法有所差异,有的给出公式,但本质上是一回事。这里介绍一种简易直观的算法。 首先给每个天干、地支一个编号,从头以4开始循序排下去,天干10后接1,。地支12后接1。天干:甲4、乙5、丙6、丁7、戊8、己9、庚10、辛1、壬2、癸3地支:子4、丑5、寅6、卯7、辰8、巳9、午10、未11、申12、酉1、戌2、亥3以公元年的尾数在天干中找出对应该尾数的天干,再将公元纪年除以12,用除不尽的余数在地支中查出对应该余数的地支,这样就得到了公元纪年的干支纪年。 如年,其尾数为3,对应的天干为“癸”;以12除得166,余数为11,对应的地支为未。于是年的干支纪年为“癸未”年。注意这是指年立春之后,立春之前应是“壬午”年。赵达先生在“祭文”中指出的时间是“癸未清明”,清明是立春之后的第四个节气(立春、雨水、惊蛰、春分、清明),所以赵先生说岁在癸未,而非壬午。 第二种算法:1天干算法:用公元纪年数减3,除以10(不管商数)所得余数,就是天干所对应的位数;2地支算法:用公元纪年数减3,除以12(不管商数)所得余数,就是地支所对应的位数;天干:甲、乙、丙、丁、戊、已、庚、辛、壬、癸地支:子、丑、寅、卯、辰、巳、午、未、申、酉、戌、亥例1我们以年为例;天干算法:,余7,7对应天干第7位是庚,即天干为庚;地支算法:,余3,3对应地支第3位是寅,即地支为寅;综上公元是用天干地支纪年为庚寅年。 为使各位信任此算法,本人再举一例来说明:例2我们再以年为例;天干算法:,余4,4对应天干第4位是丁,即天干为丁;地支算法:,余4,4对应地支第4位是卯,即地支为卯;综上公元是用天干地支纪年为丁卯年。第三种算法:首先,将天干、地支编号如下:天干:甲、乙、丙、丁、戊、已、庚、辛、壬、癸地支:子、丑、寅、卯、辰、巳、午、未、申、酉、戌、亥如要将公元纪年换算成干支纪年,以公元年的尾数在天干中找出相对应。 然后,将公元纪年除以12,用余数在地支中找出所对应的地支。这样,公元纪年就换算成了干支纪年。如:公元年用该年尾数5找出对应的天干为“乙”;然后,用除以12得余数为3,用余数3找出相对应的地支为“亥”。那么,公元年则为农历乙亥年。再如:公元年用尾数1查天干为“辛”,用除以12得余数为1,再用余数1查找地支为“酉”。那么,公元年则为农历辛酉年。 如果某一年的尾数为0或者用该年除以12的余数为0,则取天干中的第10位“庚”和地支中的第12位“申”。如:公元120年尾数0则取天干中的“庚”;除以12余数为0则取地支中的第12位“申”。那么,公元120年则为庚申年。如果公元纪年是单个数字,就用该数字在天干、地支中查找即可。如:公元6年,则在天干、地支中找出6相对应的“丙”和“寅”,那么该年则为丙寅年。公元8年则为戊辰年。 公元11年,则取尾数1对应的天干中的“辛”和11对应的地支中的“未”。那么,该年则为辛未年。公元12年则为壬申年。公元前纪年与干支纪年的换算将天干、地支编号如下:天干:甲、乙、丙、丁、戊、已、庚、辛、壬、癸地支:子、丑、寅、卯、辰、巳、午、未、申、酉、戌、亥具体换算方法同一如:公元前155年用尾数5取天干中的“丙”;155除以12得余数11,对应地支中的“戌”。那么,该年则为丙戌年。 公元前8年则为癸丑年天干地支纪月干支纪月时,每个地支对应二十四节气自某节气(非中气)至下一个节气,以交节时间决定起始的一个月期间,不是农历某月初一至月底。许多历书注明某农历月对应某干支,只是近似而非全等对应。若遇甲或己的年份,正月大致是丙寅;遇上乙或庚之年,正月大致为戊寅;丙或辛之年正月大致为庚寅,丁或壬之年正月大致为壬寅,戊或癸之年正月大致为甲寅。依照正月之干支,其余月份按干支推算。 60个月合5年一个周期;一个周期完了重复使用,周而复始,循环下去。东汉光武帝建武二十九年癸丑年(公元53年)冬至月(大雪至小寒的月份,近似农历十一月)就是“甲子月”。有歌诀为证:甲己之年丙作首,乙庚之岁戊为头;丙辛必定寻庚起,丁壬壬位顺行流;更有戊癸何方觅,甲寅之上好追求。 下表是地支纪月时对应的节气时间段、中气、近似农历月份、近似阳历月份、以及年天干和月地支构成的月干支:月地支节气时间段中气近似农历月份近似阳历月份甲或己年乙或庚年丙或辛年丁或壬年戊或癸年寅月立春—惊蛰雨水正月2月丙寅月戊寅月庚寅月壬寅月甲寅月卯月惊蛰—清明春分二月3月丁卯月己卯月辛卯月癸卯月乙卯月辰月清明—立夏谷雨三月4月戊辰月庚辰月壬辰月甲辰月丙辰月巳月立夏—芒种小满四月5月己巳月辛巳月癸巳月乙巳月丁巳月午月芒种—小暑夏至五月6月庚午月壬午月甲午月丙午月戊午月未月小暑—立秋大暑六月7月辛未月癸未月乙未月丁未月己未月申月立秋—白露处暑七月8月壬申月甲申月丙申月戊申月庚申月酉月白露—寒露秋分八月9月癸酉月乙酉月丁酉月己酉月辛酉月戌月寒露—立冬霜降九月10月甲戌月丙戌月戊戌月庚戌月壬戌月亥月立冬—大雪小雪十月11月乙亥月丁亥月己亥月辛亥月癸亥月子月大雪—小寒冬至十一月12月丙子月戊子月庚子月壬子月甲子月丑月小寒—立春大寒十二月1月丁丑月己丑月辛丑月癸丑月乙丑月干支纪月法未普遍实行,主要为星相家推算八字用。 推算实例:年大致是农历甲申年。那次甲申年自年2月4日19时56分立春起,至年2月4日1时43分立春止。这里的时刻是东经120度标准时。 丙寅月,年2月4日19时56分立春~年3月5日13时56分惊蛰丁卯月,年3月5日13时56分惊蛰~年4月4日18时43分清明戊辰月,年4月4日18时43分清明~年5月5日12时2分立夏己巳月,年5月5日12时2分立夏~年6月5日16时14分芒种庚午月,年6月5日16时14分芒种~年7月7日2时31分小暑辛未月,年7月7日2时31分小暑~年8月7日12时20分立秋壬申月,年8月7日12时20分立秋~年9月7日15时13分白露癸酉月,年9月7日15时13分白露~年10月8日6时49分寒露甲戌月,年10月8日6时49分寒露~年11月7日9时59分立冬乙亥月,年11月7日9时59分立冬~年12月7日2时49分大雪丙子月,年12月7日2时49分大雪~年1月5日14时3分小寒丁丑月,年1月5日14时3分小寒~年2月4日1时43分大寒天干地支纪日干支纪日,60日大致合2个月一个周期;一个周期完了重复使用,周而复始,循环下去。 确定的文献指出干支纪日始于鲁隐公三年夏历二月己巳日(公元前720年二月初十)。因为儒略历的平年有365日,而每4年一次,公元年能被4整除,闰年有366日,平均一年日,所以4年日和一甲子的60日,最小公倍数是日,合80年。这就是说,每80年,干支纪日对应的儒略历月日日期会反复一次循环。 (公元4年本来应为闰年,但因为公元前45年开始实施儒略历后,“每隔3年”加一次闰日被误为“每3年”加一次闰日,所以罗马皇帝屋大维下令前5年、前1年、4年停闰以修正错误置闰。 )因为格里历的平年有365日,而每4年一次闰年,但是如果遇上整百年,公元年能被400整除才能认定为闰年(这是因为按照现在立法计算,四年一闰的规定使每年多出天,经过400年大约会多出3天,如果在能被400整除年份的前面3个百年不算闰年,则正好平衡),闰年有366日,平均一年日,所以400年日和一甲子的60日,最小公倍数是日,合年。 这就是说,每80年,干支纪日对应的格里历月日日期若没有遇到能被100但非400整除的公元年,会反复一次循环,但整体而言,假设未来从不改格里历,每年,干支纪日对应的格里历月日日期才会反复一次完整的循环。年2月18日,合农历壬子年正月初一,以及年2月18日,都是“甲子日”。天干地支纪时干支纪时,60时辰合5日一个周期;一个周期完了重复使用,周而复始,循环下去。 必须注意的是子时分为0时到1时的早子时和23时到24时的晚子时,所以遇到甲或己之日,0时到1时是甲子时,但23时到24时是丙子时。晚子时又称子夜或夜子。日上起时亦有歌诀:甲己还加甲,乙庚丙作初;丙辛从戊起,丁壬庚子居;戊癸何方发,壬子是真途。 下表列出日天干和时辰地支构成的时辰干支,以北京时间(UTC8)为准:时辰地支北京时间(UTC8)甲或己日乙或庚日丙或辛日丁或壬日戊或癸日子时23时—1时甲子时丙子时戊子时庚子时壬子时丑时1时—3时乙丑时丁丑时己丑时辛丑时癸丑时寅时3时—5时丙寅时戊寅时庚寅时壬寅时甲寅时卯时5时—7时丁卯时己卯时辛卯时癸卯时乙卯时辰时7时—9时戊辰时庚辰时壬辰时甲辰时丙辰时巳时9时—11时己巳时辛巳时癸巳时乙巳时丁巳时午时11时—13时庚午时壬午时甲午时丙午时戊午时未时13时—15时辛未时癸未时乙未时丁未时己未时申时15时—17时壬申时甲申时丙申时戊申时庚申时酉时17时—19时癸酉时乙酉时丁酉时己酉时辛酉时戌时19时—21时甲戌时丙戌时戊戌时庚戌时壬戌时亥时21时—23时乙亥时丁亥时己亥时辛亥时癸亥时天干地支次序表1甲子2乙丑3丙寅4丁卯5戊辰6己巳7庚午8辛未9壬申10癸酉11甲戌12乙亥13丙子14丁丑15戊寅16己卯17庚辰18辛巳19壬午20癸未21甲申22乙酉23丙戌24丁亥25戊子26己丑27庚寅28辛卯29壬辰30癸巳31甲午32乙未33丙申34丁酉35戊戌36己亥37庚子38辛丑39壬寅40癸卯41甲辰42乙巳43丙午44丁未45戊申46己酉47庚戌48辛亥49壬子50癸丑51甲寅52乙卯53丙辰54丁巳55戊午56己未57庚申58辛酉59壬戌60癸亥天干地支的计算方法(年份3)10余数对天干如,除以10余数是1即为甲(年份3)12余数对地支如,除以12余数是7即为午即年是甲午年编辑本段其他相关天干地支纪年法同时可纪年、月、日、时,分别称为“年柱、月柱、日柱、时柱”。 此八个字就是俗称的“八字”。一个人的八字就是他出生时间的四柱记录。关于月、日、时的天干地支纪法,已使用不多,有兴趣的读者可去查阅有关资料。十二地支与十二生肖对应,即子鼠、丑牛、寅虎、卯兔、辰龙、巳蛇、午马、未羊、申猴、酉鸡、戌狗、亥猪。
|
以上数据内容来源于:百度天干地支最正确的算法、搜狗天干地支最正确的算法、360天干地支最正确的算法 |
三、用手指掐算日子的算法
教你用手指掐算干支纪年 从事历史、文物工作的同志,特别是研究古书画的同志,经常要碰到干支纪年问题。比如,乾隆“庚寅”年到底是乾隆几年呢又比如,当你碰到任伯年的画上题上“壬午”年作时,那么任伯年在这一年是多大年纪呢这时如果你手头没有一本年表,而又马上要答复这个问题,你一定会干着急。现在让我们来介绍一下用指头掐算干支纪年的方法。如果你能掌握,上面提出来的问题,就立即可以解决了。 用手指掐算干支,大概很早就有了,清代李汝珍所著的《镜花缘》第七十五回谈到古课问题,就是用手指来掐算的,他所说的“地盘式”排列的方位,就是我们要说的方法,只不过他是用来算课,而我们却是用来推年。为了便于学习,我们在这里画了一个图,同时为了便于记住,我们作了四句打油诗,诗曰天干变化无定位,地支分布列四边天干顺推求个数,地支逆跳加十年。天干就是甲、乙、丙、丁、戊、己、庚、辛,壬、癸,叫十个大干。 地支就是子、丑、寅、卯、辰巳、午、未,申酉、戌、亥,叫十二地支。这十二个地支分列在左手上,它的地位是固定不变的。所以诗的第二句说“地支分布列四边”。 在开始学习时,你不妨用笔把它写在自己的手上,用拇指指点着这十二个地支的部位,要熟悉到指着每个邮位时,即能说出它是哪一个地支。天干的地位则没有固定。它是随着地支而变动的。请参阅图二。 打一个比喻,它好象是一个能转的齿轮套在地支的外边、十个天干好象十个齿一样,看图中箭头,旋转的方向和钟表一样,假若现在说“甲子”,你就要把“甲”字指在“子”的部位上,在无名指的下节按照这个“齿轮’所列的天干次序,一字一字地和手上的地支配上,那就是。甲子、乙丑、丙寅、丁卯……。 假如你说“甲寅”,你就要把“甲”字指到食指下节的“寅”字,好象这个齿轮往前移动了,这时天干地支的配合便变成了甲寅、乙卯、丙辰、丁巳……。由于天干不像地支一样,在指头没有固定的地位,而是跟着地支而变化的,所以诗的第一句叫“天干变化无定位。 ”但有一点要注意的,天干的单数甲、丙、戊、庚、壬一定要配上地支的单数子、寅、辰、午、申、戌,天干的双数乙、丁、己、辛、癸,一定要配上地支的单数子、寅、辰、午、申、戌,天干的双数乙、丁、己、辛、癸。一定要对上地支的双数丑、卯、巳、未、酉亥,在第二图把它们的单数和双数用不同字体区别开来,以便在练习时不致搞错。 现在把前面所举的例子一一乾隆“庚寅”年是乾隆的第几年来作一次练习。这里要有一个先决的条件,即我们要求得的干支纪年,都必须要先知道它们第一个年头的干支是什么才行。乾隆的第一年的干支是“丙辰”,你就从图中先找到地支的“辰”字,在食指的第二节然后配上天干的“丙”字,即是乾隆的第一年丙辰。 这时第二图中的天干,有如齿轮的转动一样,把“丙”字转到“辰”字上,从这里作为起点“1”字算起,请注意,后边谈到计算公元或者是计算每个人的实岁时,作为起点的数字应当是“0”而不是“l”顺着图中的箭头往前推算就成为这样的情况数字天干丙丁戊己庚地支辰巳午未申表现指上就是这样见图三。 这里还须插上几句话。我们一般的习惯要求得数目字,比如说要求得乾隆二十五年,都是先求得十数,然后再求个数。用手推算,本来也可以先求十数,但是速度太慢,现在是先求个数,然后再求十数。天干因为正好是十个,所以每一个天干可以代表从“0”至“9”的每一个数字,这并不是说它所代表的数字在任何地方都永远不变,但它却是相对不变的,比如说公元“0”年正好是“庚”年,于是天干和数字就这样套上了庚辛壬癸甲乙丙丁戊己 这个套上的数字和天干如果记住了,是有用的,比如“己”字永远就是公元后个数的“9”,今年是“79”年,就是“己未”,十年前是“69”年,就是“己酉”,十年后是“89”年,就是“己巳”这是相对不变的。但是我们现在所求的是乾隆天干,他的天干第一年是“丙”,按照这个次序数字和“天干”套上之后,却变成这样了丙丁戊己庚辛壬癸甲乙在乾隆的年号来说,上列的天干所代表的数字也相对不变了。 诗的第三句说“天干顺推求个数”,就是说,你只要知道所求对象的第一年是什么干支,顺若次序就求得他的个数了,如上边的乾隆从“丙”年起推算到“庚”年,他的个数是“5”,以后只要逢着乾隆天干有“庚”字,即有个数“5”字。 现在我们再来看所举乾隆例子的图中,天干“庚”字,即数字的“5”字,是落脚在地支的“申”字在小指的第一节。如果我们要问的是乾隆“庚申”年是他的第几年,那就不用往下再求了,它就是第“5”年,这是因为所问的地支“申”也已经找到了。即天干的庚字正好落脚在地支的申字。可是我们上面所要问的是乾隆“庚寅”年,而我们已经求得的只有它的个数“5”天干的庚字,还须求得这个地支的“寅”字,也即是要求得他的“十”数。 这时就要用诗的第四句“地支逆跳加十年”。从哪跳起呢和如何跳呢请你看看图四。这里必须注意,单数和双数两种不同的字体,同时也要注意上边我们所说天干的单数和双数,千万不能对错了。前面我们求得乾隆的“庚”字是数字的“5”字,现在要记住这个“庚”字和“5”字,好像这两字写在一个跳棋子上一样,把它们从它原来的落脚点“申”字在小指的第一节跳起。 所谓逆跳,就是往回跳,象跳棋一样,隔一字一跳,第一次要跳到“午”字正中指上节,这个好像写有“庚”字和5字的跳棋子,把它的“庚”字与落脚点的“午”字配合起来,这时就叫“庚午’因为每跳一次要加十年,和这个5字加在一起,就是十五年,也就是说乾隆的“庚午”年就是乾隆的十五年。再往回跳就要跳到食指第二节的“辰”字,这时就是“庚辰”,再加十年呢,就是二十五年。 再往下跳,就跳到食指下节的“寅”字了,这时就是“庚寅”,再加十年呢,就是三十五年。因为上面所提的落脚点“寅”字已经找到,我们的答案也就找到了,即乾隆的“庚寅”年是它的三十五年。你如果还要往下跳就是“庚子”即四十五年,“庚戌”即五十五年,“庚申”即六十五年。 可是这里就要提出注意了,乾隆只有六十年,并没有六十五年,所以我们在推算某一个皇帝的年号或某人的岁数时,既要知道他的第一年也还要了解他的最后一年,如果是超过了他最后一年,那就会搞错了,这是一般常识问题。干支还有一个循环问题,六十年之后一循环,假如你是甲子年生,算为一岁,那么等到你六十一岁时又是甲子年了,在推算到有循环的干支时,只有靠其它条件来解决问题。 比如说一个画家是“甲子”年生,算为一岁,他画了一幅画题“甲子”年画,我们只能推算他是六十一岁时画,不能说他一岁所画的。你在练习推算时,可以用你自己的出生年龄作为练习,其它推算古人的年龄,方法都是一样。 这个方法同样可以推算每一个I世纪的其一个干支是第几年,但首先要知道这一个世纪的头一年是什么干支。公元后的干支是有一定的,第一年不是“庚子”就是“庚辰”或“庚申”,都是这三个来回转着。如现在20世纪的第一年是“庚子”,即l900年,如果你要找“己丑”年是哪一年,就可按上述方法推算。推算的结果是“49”,那么加上年就是年。但在推算时应把它的第一年作为“0”字算起,不能作为“1”字算起。 还有因为六十年一个循环,在一百年之内有四十个干支是重复的,如年是“己未”,而年也是“己未”,如何区分前后两个干支,只有靠其它条件来解决了。这个推算方法在极其熟练之后,公元前的干支也可用手来推算。公元前的每个世纪第一年是“辛丑”、‘辛巳”、“辛酉”,也是三个轮转着,但推算时不能和公元后一样,都要“反其道而行之”,因为我们一般比较少用,这里就不多说了。
|
以上数据内容来源于:百度用手指掐算日子的算法、搜狗用手指掐算日子的算法、360用手指掐算日子的算法 |
更多关于天干地支算法 |
---|
更多相关:百度天干地支算法、搜狗天干地支算法、360天干地支算法 |