用再传播的形式将有价值的资讯转换成新的价值 HTTP://WWW.2CB.CN   
知识集汇
干支历法的推算方法

  

 

    干支纪年
 
    一个周期的第一年为“甲子”(如黄巾起义口号为“岁在甲子,天下大吉”),第二年为“乙丑”,依此类推,60年一个周期;一个周期完了重复使用,周而复始,循环下去。如1644年为农历甲申年,60年后的1704年同为农历甲申年,300年后的1944年仍为农历甲申年,所以一代文豪郭沫若写有《甲申三百祭》;1864年为农历甲子年,60年后的1924年同为农历甲子年;1865年为农历乙丑年,1925、1985年同为农历乙丑年,依次类推。
 
    必须特别注意的是干支纪年是以立春作为一年即岁次的开始,是为岁首,不是以农历正月初一作为一年的开始。例如,1984年大致是岁次甲子年,但严格来讲,当时的甲子年是自1984年立春起,至1985年立春止。
 
    天干地支纪年与公历的近似换算:
 
    从已知的公历年份计算干支纪年:年份数减3,除以10的余数是天干,除以12的余数是地支。(公元前的年份则用58-“年份数除以60的余数”后计算)
 
    也可以天干:年份÷10,得到的商不管,看余数,若余数-3得正,则按天干顺序往下数,得数即为天干顺序数,若余数-3为负,则+10,得到的数即为天干数,若余数为3,则为天干的最后一位,即癸。
 
    地支:年份÷12,得到的商不管,看余数,若余数-3得正,则按地支顺序往下数,得数即为地支顺序数。若余数-3为负,则+12,得到的数即为地支顺序数,若余数为3,则为地支的最后一位,即亥。
 
    把天干数和地支数合并起来,即为所求的干支年份。
 
    如:2001年查万年历为辛巳年,算法为:
 
    2001÷10=200……1,1—3=—2,—2+10=8,按天干顺序数到8,甲、乙、丙、丁、戊、己、庚、辛。第8位为辛。
 
    2001÷12=166……9,9—3=6,按地支顺序数到6,子、丑、寅、卯、辰、巳。第6位为巳。 按照以上计算结果,把天干、地支合并起来可知,2001年为辛巳年。
 
    一种推算干支年份的最简单方法
 
    有关如何推算天干地支方面的文章网上也有很多,但看了有些还是看不懂或是不会运用。其实我们可以简化如下,通俗记忆:
 
    表一

天干(10)
年份尾数
4
5
6
7
8
9
0
1
2
3

 
    表二

地支(12)
除以12所得余数
4
5
6
7
8
9
10
11
0
1
2
3

 
    推算公式:
 
    天干=年份尾数(如2009年尾数是9,对应天干即己)
 
    地支=年份除以12所得余数(如2009÷12所得余数是5,对应地支即丑)
 
    因此2009年应该是己丑年  
 
    六十年甲子(干支表)

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
甲寅
乙卯
丙辰
丁巳
戊午
己未
庚申
辛酉
壬戌
癸亥

 
    查看不同时间段的万年历。如:1516—2060年的万年历,记着五百年的干支,一查便知。
 
    根据“六十年甲子(干支表)”的公元年对应进行向上或朝下地反推。如:《辛亥革命》的辛亥年是1911年(48号干支),《戊戌变法》的戊戌年为35号干支,比辛亥年早13年,则“1911-13=1898”故《戊戌变法》是1898年。
 
    应用公元年进行计算。应用公元年的某一年,除以60(指六十年甲子),余数小于60,再用余数减去3(干支纪年是从公元4年开始使用的),便知。
 
    如2002年:2002÷60,余数为22,再22-3,得数是19,查六十年甲子(干支表)19号干支,得知是壬午年。
 
    还有一种速算公式计算任何一天的天干地支,不出一二分钟就能计算出1900年到2100年间任何一年的天干地支。
 
    1:1900----2100年年干=年尾数—3
 
    例:1969年年干=9—3=6,第6位天干就是已;2012年年干=2—3=9,第9位天干是壬(2不足减就补10成12)。
 
    2:1900----1999年年支=年尾二位数+1;2000----2099年年支=年尾二位数+5
 
    例:1969年年支=69+1=70,去掉60的倍数为10,地支第十位为酉;2012年年支=12+5=17,去掉12余5,地支第五位是辰;那么1969年干支就是已酉,2012年干支就是壬辰。
 
    由公元推干支纪年
 
    为了便于运算和使检索更加直观,借用六十干支表并按顺序加以编号成表如下:
 
    六十干支表

甲子0
乙丑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

 
    该表于公元前后的推算均适用,具体的方法如下:
 
    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,查表一知该年对应的干支为壬戌。其余可以类推。
 
  上述方法简便易行,只要记住表一,就完全可以不用纸笔,直接由心算推出结果。
 
    附录:速查干支、公元对照表

甲子
乙丑
丙寅
丁卯
戊辰
己巳
庚午
辛未
壬申
癸酉
1804
1805
1806
1807
1808
1809
1810
1811
1812
1813
1864
1865
1866
1867
1868
1869
1870
1871
1872
1873
1924
1925
1926
1927
1928
1929
1930
1931
1932
1933
1984
1985
1986
1987
1988
1989
1990
1991
1992
1993
甲戌
乙亥
丙子
丁丑
戊寅
己卯
庚辰
辛巳
壬午
癸未
1814
1815
1816
1817
1818
1819
1820
1821
1822
1823
1874
1875
1876
1877
1878
1879
1880
1881
1882
1883
1934
1935
1936
1937
1938
1939
1940
1941
1942
1943
1994
1995
1996
1997
1998
1999
2000
2001
2002
2003
甲申
乙酉
丙戌
丁亥
戊子
己丑
庚寅
辛卯
壬辰
癸巳
1824
1825
1826
1827
1828
1829
1830
1831
1832
1833
1884
1885
1886
1887
1888
1889
1890
1891
1892
1893
1944
1945
1946
1947
1948
1949
1950
1951
1952
1953
2004
2005
2006
2007
2008
2009
2010
2011
2012
2013
甲午
乙未
丙申
丁酉
戊戌
己亥
庚子
辛丑
壬寅
癸卯
1834
1835
1836
1837
1838
1839
1840
1841
1842
1843
1894
1895
1896
1897
1898
1899
1900
1901
1902
1903
1954
1955
1956
1957
1958
1959
1960
1961
1962
1963
2014
2015
2016
2017
2018
2019
2020
2021
2022
2023
甲辰
乙巳
丙午
丁未
戊申
己酉
庚戌
辛亥
壬子
癸丑
1844
1845
1846
1847
1848
1849
1850
1851
1852
1853
1904
1905
1906
1907
1908
1909
1910
1911
1912
1913
1964
1965
1966
1967
1968
1969
1970
1971
1972
1973
2024
2025
2026
2027
2028
2029
2030
2031
2032
2033
甲寅
乙卯
丙辰
丁巳
戊午
己未
庚申
辛酉
壬戌
癸亥
1854
1855
1856
1857
1858
1859
1860
1861
1862
1863
1914
1915
1916
1917
1918
1919
1920
1921
1922
1923
1974
1975
1976
1977
1978
1979
1980
1981
1982
1983
2034
2035
2036
2037
2038
2039
2040
2041
2042
2043

     
    天支纪月
 
    许多历书注明某农历月对应某干支,只是近似而非全等对应。若遇甲或己的年份,正月大致是丙寅;遇上乙或庚之年,正月大致为戊寅;丙或辛之年正月大致为庚寅,丁或壬之年正月大致为壬寅,戊或癸之年正月大致为甲寅。依照正月之干支,其余月份按干支推算。60个月合5年一个周期;一个周期完了重复使用,周而复始,循环下去。东汉光武帝建武二十九年癸丑年(公元53年)冬至月(大雪至小寒的月份,近似农历十一月)就是“甲子月”。有歌诀为证:甲己之年丙作首,乙庚之岁戊为头;丙辛必定寻庚起,丁壬壬位顺行流;更有戊癸何方觅,甲寅之上好追求。
 
    由上可见,农历的月份,地支是固定的,天干却不固定,要经过推算才能排出。注意:农历的闰月是不记干支的。
 
    例如:2006年为“丙戌”年,查天干年份为“丙”子头,在上表的第三行,其正月为庚寅,二月为辛卯,三月为壬辰,余类推。
 
    还有一种月干计算公式:
 
    由于月的地支是固定的如正月起寅之类,故只计算月干。月干=年干数×2+月份-B,例1:1969年(已酉)年八月(酉月)的天干=6×2+8=20,天干10为周期就去掉10,天干第十位为癸,则此月干支为癸酉。例2:2013年(癸巳)年八月(酉月)的天干=10×2+8=28,天干10为周期就去掉二个10,天干第八位为辛,则此月干支为辛酉。
 
    速查干支农历纪月法
 
    其方法为:若遇甲或己的年份 ,正月是丙寅;遇上乙或庚之年,正月为戊寅;遇上丙或辛之年,正月为庚寅;遇上丁或壬之年,正月为壬寅;遇上戊或癸之年,正月为甲寅。依照正月之干支,其余月份按干支推算即可。详见下表:
   
  
 
     干支纪月对应二十四节气
 
    干支纪月时,每个地支对应二十四节气自某节气(非中气)至下一个节气,以交节时间决定起始的一个月期间,不是农历某月初一至月底。
 
    下表是地支纪月时对应的节气时间段、中气、近似农历月份、近似阳历月份、以及年天干和月地支构成的月干支:
 

月地支
节气
时间段
中气
近似
农历月份
近似
阳历月份
甲或
己年
乙或
庚年
丙或
辛年
丁或
壬年
戊或
癸年
寅月
立春
惊蛰
雨水
正月
2月
丙寅月
戊寅月
庚寅月
壬寅月
甲寅月
卯月
惊蛰
清明
春分
二月
3月
丁卯月
己卯月
辛卯月
癸卯月
乙卯月
辰月
清明
立夏
谷雨
三月
4月
戊辰月
庚辰月
壬辰月
甲辰月
丙辰月
巳月
立夏
芒种
小满
四月
5月
己巳月
辛巳月
癸巳月
乙巳月
丁巳月
午月
芒种
小暑
夏至
五月
6月
庚午月
壬午月
甲午月
丙午月
戊午月
未月
小暑
立秋
大暑
六月
7月
辛未月
癸未月
乙未月
丁未月
己未月
申月
立秋
白露
处暑
七月
8月
壬申月
甲申月
丙申月
戊申月
庚申月
酉月
白露
寒露
秋分
八月
9月
癸酉月
乙酉月
丁酉月
己酉月
辛酉月
戌月
寒露
立冬
霜降
九月
10月
甲戌月
丙戌月
戊戌月
庚戌月
壬戌月
亥月
立冬
大雪
小雪
十月
11月
乙亥月
丁亥月
己亥月
辛亥月
癸亥月
子月
大雪
小寒
冬至
十一月
12月
丙子月
戊子月
庚子月
壬子月
甲子月
丑月
小寒
立春
大寒
十二月
1月
丁丑月
己丑月
辛丑月
癸丑月
乙丑月

   
    干支纪月法未普遍实行,主要为星相家推算八字用。
 
    推算实例:2004年大致是农历甲申年。那次甲申年自2004年2月4日19时56分立春起,至2005年2月4日1时43分立春止。这里的时刻是东经120度标准时。
    丙寅月,2004年2月4日19时56分立春~2004年3月5日13时56分惊蛰
    丁卯月,2004年3月5日13时56分惊蛰~2004年4月4日18时43分清明
    戊辰月,2004年4月4日18时43分清明~2004年5月5日12时2分立夏
    己巳月,2004年5月5日12时2分立夏~2004年6月5日16时14分芒种
    庚午月,2004年6月5日16时14分芒种~2004年7月7日2时31分小暑
    辛未月,2004年7月7日2时31分小暑~2004年8月7日12时20分立秋
    壬申月,2004年8月7日12时20分立秋~2004年9月7日15时13分白露
    癸酉月,2004年9月7日15时13分白露~2004年10月8日6时49分寒露
    甲戌月,2004年10月8日6时49分寒露~2004年11月7日9时59分立冬
    乙亥月,2004年11月7日9时59分立冬~2004年12月7日2时49分大雪
    丙子月,2004年12月7日2时49分大雪~2005年1月5日14时3分小寒
    丁丑月,2005年1月5日14时3分小寒~2005年2月4日1时43分大寒
 
    干支纪日
 
    自公元前720年起,直至清末,中国用干支记日,从未间断。这是世界上最长久的记日法。
 
    干支纪日,60日大致合2个月一个周期;一个周期完了重复使用,周而复始,循环下去。确定的文献指出干支纪日始于鲁隐公三年夏历二月己巳日(公元前720年二月初十)。
 
    因为儒略历的平年有365日,而每4年一次,公元年能被4整除,闰年有366日,平均一年365.25日,所以4年1461日和一甲子的60日,最小公倍数是29220日,合80年。这就是说,每80年,干支纪日对应的儒略历月日日期会反复一次循环。(公元4年本来应为闰年,但因为公元前45年开始实施儒略历后,“每隔3年”加一次闰日被误为“每3年”加一次闰日,所以罗马皇帝屋大维下令前5年、前1年、4年停闰以修正错误置闰。)
 
    因为格里历的平年有365日,而每4年一次闰年,但是如果遇上整百年,公元年能被400整除才能认定为闰年(这是因为按照现在立法计算,四年一闰的规定使每年多出0.0078天,经过400年大约会多出3天,如果在能被400整除年份的前面3个百年不算闰年,则正好平衡),闰年有366日,平均一年365.2425日,所以400年146097日和一甲子的60日,最小公倍数是2921940日,合8000年。这就是说,每80年,干支纪日对应的格里历月日日期若没有遇到能被100但非400整除的公元年,会反复一次循环,但整体而言,假设未来从不改格里历,每8000年,干支纪日对应的格里历月日日期才会反复一次完整的循环。1912年2月18日,合农历壬子年正月初一,以及9912年2月18日,都是“甲子日”。
 
    速查干支纪日法
 
    从已知日期计算干支纪日的公式为:
 
    G = 4C + [C / 4] + 5y + [y / 4] + [3 × (M + 1) / 5] + d - 3 
 
    Z = 8C + [C / 4] + 5y + [y / 4] + [3 ×*(M + 1) / 5] + d + 7 + i
 
    其中 C 是世纪数减一,y 是年份后两位,M 是月份,d 是日数。1月和2月按上一年的13月和14月来算。奇数月i=0,偶数月i=6。G 除以10的余数是天干,Z 除以12的余数是地支。(世纪数:能被400整除的年份叫世纪年,所处的年份数叫世纪数。)
 
    计算时带[ ]的数表示取整。
 
    例如:查2006年4月1日的干支日。 将数值代入计算公式。
 
    G =4×20 + [20 / 4] + 5×06 + [06 / 4] + [3 × (4 + 1) / 5] + 1 - 3 =197 
    
    除以10 余数为 7 ,天干的第7位是“庚”。 
 
    Z =8*20 + [20 / 4] + 5×06 + [06 / 4] + [3 × (4 + 1) / 5] + 1 + 7 + 6 =213
    
    除以12 余数为9,地支的第9位是“申”。
 
    答案是:2006年4月1日的干支日是庚申日。
 
    我们都知道,日的干支,甲子为第一日,乙丑为第二日,丙寅为第三日……60日为一周。一周完了再由甲子日起,周而复始,循环下去。例如农历己巳年(1989年)正月初一是丁酉日,初二是戊戌日……到三月初七正好是60天,因此三月初二又是丁酉日。
 
    干支纪时
 
    干支纪时,60时辰合5日一个周期;一个周期完了重复使用,周而复始,循环下去。必须注意的是子时分为0时到1时的早子时和23时到24时的晚子时,所以遇到甲或己之日,0时到1时是甲子时,但23时到24时是丙子时。晚子时又称子夜或夜子。日上起时亦有歌诀:甲己还加甲,乙庚丙作初;丙辛从戊起,丁壬庚子居;戊癸何方发,壬子是真途。下表列出日天干和时辰地支构成的时辰干支,以北京时间(UTC+8)为准:
 

时辰地支
北京时间(UTC+8)
甲或己日
乙或庚日
丙或辛日
丙或辛日
戊或癸日
子时
23时—1时
甲子时
丙子时
戊子时
庚子时
壬子时
丑时
1时—3时
乙丑时
丁丑时
己丑时
辛丑时
癸丑时
寅时
3时—5时
丙寅时
戊寅时
庚寅时
壬寅时
甲寅时
卯时
5时—7时
丁卯时
己卯时
辛卯时
癸卯时
乙卯时
辰时
7时—9时
戊辰时
庚辰时
壬辰时
甲辰时
丙辰时
巳时
9时—11时
己巳时
辛巳时
癸巳时
乙巳时
丁巳时
午时
11—13时
庚午时
壬午时
甲午时
丙午时
戊午时
未时
13—15时
辛未时
癸未时
乙未时
丁未时
己未时
申时
15—17时
壬申时
甲申时
丙申时
戊申时
庚申时
酉时
17—19时
癸酉时
乙酉时
丁酉时
己酉时
辛酉时
戌时
19—21时
甲戌时
丙戌时
戊戌时
庚戌时
壬戌时
亥时
21—23时
乙亥时
丁亥时
己亥时
辛亥时
癸亥时