壹、 基本概念
a.日、月、年、歲
古人經常的觀察到的天象是太陽的出沒和月亮的盈虧,所以晝夜交替的周期為壹“日”,
以月相變化的周期為壹“月”(現代叫做朔望月).。
年的概念和農業有關,《說文》:“年,熟谷也”。谷物的成熟周期意味著寒暑往來的周
期,也就是地球繞太陽壹周的時間,稱為太陽年。在遠古,年和歲是有區別的。“歲”表
示今年某壹節氣到明年同壹節氣之間的這段時間,而“年”指的是今年正月初壹至明年正
月初壹這段時間。
b. 陰陽合歷
以朔望月為單位的歷法是陰歷,以太陽年為單位的歷法是陽歷,中國古代的歷法不是純陰
歷,而是陰陽合歷。平年12個月,有6個大月30天和6個小月29天。有大小月之分,是因為
月相的變化在29-30天之間(精確數值是29.53天)。每年12個月壹***354天,但這個數還
不夠1個太陽年。地球繞太陽壹周的實際時間是365.2422日,比陰歷12個月的總和還多出
11天多。所以陰歷每過3年就和實際太陽年相差1個月的時間,所以每3年就要加1個月,稱
為閏月。這樣是為了使歷年的平均時間約等於1個太陽年,並且和自然季節大致符合。
置閏是古代歷法中的大事。《左傳文公六年》:“閏以正時,時以作事,事以厚生,生世
之道於是乎在矣”。三年壹閏還不夠,還要五年閏兩次,所以《說文》說“五年再閏”。
五年閏兩次要多了些,後來規定19年閏7個月。
關於閏月的安插問題,在殷周時代就有記載,閏月壹般放在年終。當時置閏尚無定制,有
的年份甚至出現壹年兩閏。但到了春秋時代就再也沒有這種狀況了。漢初在九月之後置閏
,稱為“後九月”,上古還有年中置閏,如閏三月,閏六月。當閏而不閏叫“失閏”。如
何安插,是古代歷法的重要問題。
c. 四季
壹年分為春夏秋冬四時,後來又按夏歷正月、二月、三月等十二個月分為孟春、仲春、季
春、孟夏、仲夏、季夏、孟秋、仲秋、季秋、孟冬、仲冬、季冬。古書常把這些名稱作為
月份的代名詞。《楚辭·哀郢》:“民離散而相失兮,方仲春而東遷”。這裏的仲春指的
就是夏歷二月。
在商代和西周前期,壹年只分為春秋二時,所以後來春秋就意味著壹年。《莊子·逍遙遊
》:蟪蛄不知春秋,意思是蟪蛄的生命不到壹年。此外史官所記的史料在上古也稱為春秋
,因為史料都是記年體的。後來歷法日趨周密,春秋二時再分冬夏二時,有些古書所列的
四時順序不是“春夏秋冬”,而是“春秋冬夏”。如《墨子·天誌中》“”制為四時春秋
冬夏,以紀綱之“,《管子·幼官篇》:“修春秋冬夏之常祭”,《禮記·孔子閑居》:
“天有四時,春秋冬夏”等。
二、 節氣
a.節氣名稱
古人根據季節更替和氣候變化的規律,把周歲太陽年365又1/4日分為立春、雨水、驚蟄等
24個節氣。這些節氣先是平分的,平均每個節日是15.22日弱。後代根據太陽移動的速度
,有的規定為 14日(如冬至前後),有的規定為16 日多(夏至前後)。24個節氣的名稱
和順序如下:
正月:立春 雨水
二月:驚蟄 春分
三月:清明 谷雨
四月:立夏 小滿
五月:芒種 夏至
六月:小暑 大暑
七月:立秋 處暑
八月:白露 秋分
九月:寒露 霜降
十月:立冬 小雪
十壹月:大雪 冬至
十二月:小寒 大寒
這套節氣名最早出現在《淮南子·天文訓》。驚蟄古名“啟蟄”,漢朝避景帝名諱改。24
節氣是和月份的搭配不是絕對固定年年壹致的。因為節氣跟著太陽年走,和朔望月沒有關
系。上述說的是大致情況
古人最初還把24節氣細分為節氣和中氣兩種,例如立春是正月節,雨水是正月中,驚蟄是
二月節,春分是二月中,余此類推。
節氣的細分和置閏產生過壹些關系。由於1人節氣加上1個中氣的時間大約是30.5天,要大
於壹個朔望月,所以每月的節月加中氣要經上月推遲1至2天,推遲到某月就只有節氣沒有
中氣,後來就以這個月份置閏。所以古人說“閏月無中氣”。陽歷每月都有節氣和中氣,
上半年每月6日和21日左右是交節日期,下半年每月8日和23日是交節日期。
b.節氣的確立
節氣的確立和天文有關。古人把黃道附近壹周天等分為星紀、玄枵等十二次,太陽運行到
某次就交某節氣,實際上24節氣就是地球圍繞太陽公轉軌道上的24個不同的位置。
《漢書·歷律誌》提到過節氣與星次的關系,如太陽運行星紀初點交大雪,運行星紀中央
就交冬至,運行到玄枵初點交小寒,運行到玄枵中央就交大寒,《律歷誌》所提到的星次
和節氣對照如下:
01.星紀:大雪 冬至
02.玄枵:小寒 大寒
03.諏訾:立春 驚蟄
04.降婁:雨水 春分
05.大梁:谷雨 清明
06.實沈:立夏 小滿
07.鶉首:芒種 夏至
08.鶉火:小暑 大暑
09.鶉尾:立秋 處暑
10.壽星:白露 秋分
11.大火:寒露 霜降
12.析木:立冬 小雪
太陽運行到某星次初點,就是前壹個節氣,如果運行中央,就是後壹個節氣
這個對照表是《漢書》提到的,驚蟄在雨水之前,清明在谷雨之後,和有所不同。2000多
年前的天象和現代不壹樣,《律歷誌》中提到了交某節氣時指太陽所在的星宿和度數,如
冬至點在牽牛初度,在今天摩羯座β星附近,現代的冬至點在人馬座。
c. 節氣的演變
24節氣是逐步完善起來的。古人很早就掌握了春秋分和夏冬至這四個最重要的節氣。《尚
書·堯典》把春分叫做日中,秋分叫宵中,國為這兩天晝夜長短相等,《呂氏春秋》都叫
日夜分。《堯典》把夏至叫日永,冬至叫日短,因為夏至白天最長,冬至白天最短,《呂
氏春秋》分別叫做日長至,日短至。《左傳僖公五年》說:“凡分至啟閉必書雲物”,這
裏的分指春秋分,至指夏至夏冬,啟指立春立夏,閉指立秋立冬。《呂氏春秋》裏已經明
確提到了立春、立夏、立秋、立冬4個節氣。到了《淮南子》就出現了和現代名稱完全相
同的24個節氣了。
三、 紀日法
古人用幹支紀日,例如《左傳隱公元年》“五月辛醜,大叔出奔***”。幹是天幹,即甲乙
丙丁戊己庚辛壬癸,支是地支,即子醜寅卯辰巳午未申酉戌亥。十幹和十二支依次組合,
形成“六十甲子”。
甲子 乙醜 丙寅 丁卯 戊辰 己巳 庚午 辛未 壬申 癸酉
甲戌 乙亥 丙子 丁醜 戊寅 己卯 庚辰 辛巳 壬午 癸未
甲申 乙酉 丙戌 丁亥 戊子 己醜 庚寅 辛卯 壬辰 癸巳
甲午 乙未 丙申 丁酉 戊戌 己亥 庚子 辛醜 壬寅 癸卯
甲辰 乙巳 丙午 丁未 戊申 己酉 庚戌 辛亥 壬子 癸醜
甲寅 乙卯 丙辰 丁巳 戊午 己未 庚申 辛酉 壬戌 癸亥
每個單位代表壹天,假調戲某日為甲子日,則甲子以後的日子依次是乙醜、丙寅、丁卯等
。六十甲子周而復始。這種紀日法在甲骨文時代就有了。
古人紀日時有時只記天幹不記地支,《楚辭·哀郢》:“出國門而軫懷兮,甲之朝吾以行
”。這種情況在甲骨文已經有了。有地支紀日比較後起,而且大多限定在特定的日子。
在壹個月內的某行日子,在古代還有其它稱謂,如每月的第壹日叫“朔”,最後壹天叫“
晦”,所以《莊子》說“朝菌不知晦朔”。初三叫朏(fei3),大月十六、小月十五叫望,
鮑照詩“三五二八日,千裏與君同”,指的就是望日的明月說的。近在望後的日子叫既望
,蘇軾《前赤壁賦》說“壬戌之秋,七月既望”。對朔晦兩天,古人常常既稱幹支又稱朔
晦。如《左傳僖公五年》“冬十二月丙子朔,晉滅虢,虢公醜奔京師”,《左傳襄公十八
年》“十月……丙寅晦,齊師夜遁”。其它日子只記幹支。人們可以通月朔日的幹支推算
它是這個月的第幾天。例如前面提到的“五月辛醜,大叔出奔***”,根據後人推定,“辛
醜”這壹天是魯隱公元年五月二十三日。
有時候根據幹支的順序,甚至可以推斷出古書中的錯誤來。《春秋襄公二十八年》說:“
十有二月甲寅,天王崩。乙未,楚子昭卒”。從甲寅到乙未***42天,不可能在同壹月內,
因此這個記載肯定有錯誤。
四、 記時法
古代主要根據天色把壹晝夜分為若幹時段,日出時叫旦早朝晨,日入時叫夕暮昏晚,所以
古書上常常出現朝夕、旦暮、晨昏、昏旦並舉。太陽正中時叫日中,將近日中的時間叫隅
中,太陽西斜叫昃。
古人壹日兩餐,朝食在日出之後,隅中之前,這段時間叫做食時或蚤食;夕食在日昃之後
,日入之前,這段時間叫晡時。日入以後黃昏,黃昏以後是人定。《孔雀東南飛》有“奄
奄黃昏後,寂寂人定初”的詩句,就是對段時間的確切描繪。人定以後就是夜半了。
《詩經》上說“女曰雞鳴,士曰昧旦。”雞鳴和昧旦是夜半以後相繼的兩個時段名稱。昧
旦是天將亮的時間,又叫“昧爽”。古書還常提到平旦,平明,這是天亮的時間。
古人對壹晝夜有等分的時辰概念之後,用十二地支表示十二個時辰,每個時辰恰好等於現
代的兩小時。小時的本意就是小時辰。十二地支是子醜寅卯辰巳午未申酉戌亥。和現代對
照,夜半12點(24點)就是子時(所以又稱子夜),上午2點是醜時,4點是寅時,6點是
卯時,以此類推。近代又把每個時辰細分為初、正式成立。晚上11 點(23點)是為子初
,夜半12點為子正;上午1點為醜初,上午2點為醜正,等等。這就等於把壹晝夜等分為24
小時了。對照表如下:
子 醜 寅 卯 辰 巳 午 未 申 酉 戌 亥
初 23 1 3 5 7 9 11 13 15 17 19 21
正 24 2 4 6 8 10 12 14 16 18 20 22
五、記月法
古人紀月通常以序數為記,如壹月二月三月等,便作為歲首的月份叫正(zheng1)月。先
秦時代每個月似乎還有特殊的名稱。例如正月為“孟陬”(楚辭)、四月為“除”(詩經
)、九月為“玄”(國語)、十月為“陽”(詩經)。
古人又有所謂月建的概念,就是把十二地支和壹年的十個月份相配。以通常冬至所在的月
份十壹月(夏歷)配子,稱為建子之月,由此順推。十二月為建醜之月,正月為建寅之月
,直到十月為建亥之月,由此周而復始。
後世還有以天幹配合著地支來紀月,這是後來的事。
六、紀年法
古代最早的紀年法是按照王公即位的年次紀年,例如公元前770年是周平王元年、秦襄公
八年等。以元、二、三年序數計算,直到在位者出位。漢武帝時開始用年號紀元,例如建
元元年、元光二年等,更換年號就重新紀元。這兩種紀年法是古代學者所用的傳統紀年法
。戰國時代,占星家還根據天象紀年,有所謂歲星紀年法、太歲紀年法。後世還有幹支紀
年法。下面分別敘述。
a. 歲星紀年法
古人把黃道附近壹周天分為十二等分,由西向東命名為星紀、玄枵等十二次。古人認為歲
星(木星)由西向東十二年繞天壹周,每年行經壹次星次。假如某年歲運行到星紀範圍,
這壹年就記為“歲在星紀”,第二年歲運星運行到玄枵範圍,就紀為“歲在玄枵”,其余
由此類推,十二年周而復始。《左傳》襄公三十年裏有“歲在降婁”,《國語·晉語四》
有“君之行也,歲在大火”,就是用歲星紀年的例子。
事實上歲星並不是12年繞天壹周,而是11.8622年,每年移動的範圍比壹個星次稍微多壹
點,漸積至86年,便會多走壹個星次,這種情況叫“超辰”
b.太歲紀年法
古人有所謂十二辰的概念,就是把黃道附近壹周天的十二等分由東向西配以子醜寅卯等十
二辰,其安排的方向正好和十二次相反。二者對照如下表:
十二次 十二辰
01.星紀 醜
02.玄枵 子
03.諏訾 亥
04.降婁 戌
05.大梁 酉
06.實沈 申
07.鶉首 未
08.鶉火 午
09.鶉尾 巳
10.壽星 辰
11.大火 卯
12.析木 寅
歲星由西向東的運行,和人們所熟悉的十二辰的方向正好相反,所以歲星紀年法在實際生
活中應用起來很不方便。為此,古代的天文學家便設想出壹個假歲星叫“太歲”,讓它和
真歲星“背道而馳,這樣就和十二辰的方向順序相壹致,並用它來紀年。太歲是《漢書·
天文誌》的叫法,《史記·天官書》叫歲陰,《淮南子·天文訓》叫太陰。根據《漢書·
天文誌》記載的戰國時天象記錄,某年歲星在星紀,太歲便運行到析木(寅),這壹年就
是“太歲在寅”,第二年歲星運行到玄枵,太歲便運行到大火(卯),這壹年就是“太歲
在卯”
此外古人還為“太歲在寅”、“太歲在卯”等12個年份取了專門名稱,如攝提格、單閼等
,對應如下表:
太歲年名 太歲位置 歲星位置
攝提格 寅(析木) 星紀(醜)
單閼 卯(大火) 玄枵(子)
執徐 辰(壽星) 諏訾(亥)
大荒落 巳(鶉尾) 降婁(戌)
敦牂 午(鶉火) 大梁(酉)
協洽 未(鶉首) 實沈(申)
涒灘 申(實沈) 鶉首(未)
作噩 酉(大梁) 鶉火(午)
閹茂 戌(降婁) 鶉尾(巳)
大淵獻 亥(諏訾) 壽星(辰)
困敦 子(玄枵) 大火(卯)
赤奮若 醜(星紀) 析木(寅)
單閼音chan2 yan1, 執徐音zhi2 chu2 牂音zang1 涒音tun1
屈原《離騷》中有“攝提貞於孟陬兮,唯庚寅吾以降”。壹般認為這裏的攝提是太歲年名
裏的攝提格,孟陬指夏歷正月建寅之月;庚寅是生日的幹支。所以屈原正好生於“寅年寅
月寅日”。
但要註意,這裏的寅年不是幹支紀年裏的“寅”年,而是指太歲在寅(析木)之年。
大概在西漢年間,歷法家又取了閼逢、旃蒙等十外名稱,叫做歲陽,依次和上述十二個太
歲年名相配,方法同六十甲子相同,組成六十個年名,以閼逢攝提格為第壹年,旃蒙單閼
為第二年。六十年周而復始。這種紀年法自西漢太初元年就開始使用了。
《爾雅》記載十個歲陽和十幹對應,列表如下:
歲陽 十幹
閼逢 甲
旃蒙 乙
柔兆 丙
強圉 丁
著雍 戊
屠維 己
上章 庚
重光 辛
玄黓 壬
昭陽 癸
旃音zhan1 黓音yi4
太歲與十二辰的對應如下:
太歲年名 十二辰
攝提格 寅
單閼 卯
執徐 辰
大荒落 巳
敦牂 午
協洽 未
涒灘 申
作噩 酉
閹茂 戌
大淵獻 亥
困敦 子
赤奮若 醜
有時這些年名可用幹支來表示,閼逢攝提格為甲寅年,旃蒙單閼為已卯年。創制這些名字
是為了表示歲星逐年所在方位的,但後來發現歲星並不是每年整走壹個星次,所以就廢而
不用,而改用幹支紀年了。但後人還有用這些古年名的,是根據當年的幹支來對照的,已
經失去了這些年名的本來意義了。如司馬光《資治通鑒》176卷《陳紀》十下註:“起閼
蒙執徐,盡著雍涒灘,凡五年”,這是說從甲辰到戊申***五年。
c.幹支紀年法
幹支紀年以六十甲子周而復始,據說最早應用於西漢,到了東漢元和二年(85年),朝廷
下令在全國範圍內推行幹支紀年,壹直到今天仍在使用。有些史書記載西漢以前的幹支紀
年,是後人推算出來的。
七、三正
春秋戰國時代有所謂夏歷、殷歷和周歷,三者主要的區別在於歲首的不同,所以又稱“三
正”。周歷以通常冬至所在的建子之月(即夏歷的十壹月)為歲首,殷歷以建醜之月(即
夏歷的十二月),夏歷以建寅之月(即後世常說的陰歷正月)。周歷比殷歷早壹月,比夏
歷早兩個月。由於三正歲首的月建不同,四季也不同。下表是三歷季節與月份的對應:
月建 子 醜 寅 卯 辰 巳 午 未 申 酉 戌 亥
周歷 正 二 三 四 五 六 七 八 九 十 十壹 十二
季節 春 春 春 夏 夏 夏 秋 秋 秋 冬 冬 冬
殷歷 十二 正 二 三 四 五 六 七 八 九 十 十壹
季節 冬 春 春 春 夏 夏 夏 秋 秋 秋 冬 冬
夏歷 十壹 十二 正 二 三 四 五 六 七 八 九 十
季節 冬 冬 春 春 春 夏 夏 夏 秋 秋 秋 冬
三正是春秋戰國時代不同地區所使用的不同的歷法制度。了解三正是有必要的,先秦古籍
裏所以紀時的歷日制度並不統壹。《春秋》或《孟子》多用周歷,《楚辭》和《呂氏春秋
》用夏歷。《詩經》要看具體詩篇,如《小雅·四月》用夏歷,《豳風·七月》周歷和夏
月並用。
《左傳成公八年》記載“二月無冰”,史官把這壹罕見的天象載入史冊,很顯然這個二月
指的是周歷二月即夏歷十二月而言。如果是夏歷二月,則已經是“東風解凍”,用不著大
書特書。又如《莊公七年》說“秋,大水,無麥苗”,這也是指周歷,周歷秋季相當於夏
歷的五六月,晚收的麥子和“五稼之苗”有可能被大水“沖殺”,如果是夏歷秋季,就不
可解了。同樣的理由《孟子·滕文公上》所說的“江漢以濯之,秋陽以暴之”的秋陽是指
夏歷五六月的炎日。同壹史實,在《春秋》和《左傳》所記月的時月常有出入,同屬《左
傳》的記時也有差異。《春秋隱公六年》說“冬,宋人取長葛”, 《左傳》說“冬,宋
人取長葛”; 《春秋父僖公五年》說“春,晉侯殺世子申生”,同壹事件在《左傳》被
記在僖公四年十二月,這說明《左傳》依據的史料有用夏歷的。
在戰國秦漢之際有所謂“三正論”,認為夏正建寅、殷正建醜、周正建子是夏商周三代輪
流更改正朔,因“王者始起”要“改正朔”、“易服色”以表示受命於天。秦始皇統壹中
國後,改以建亥之月(即夏歷的十月)為歲首,但夏正比較適合農事季節,所以並不稱十
月為正月(秦朝管正月叫“端月”),不改正月為四月,春夏秋冬的搭配仍和夏正相同。
漢初沿襲秦制。《史記·魏其武安侯列傳》載漢武帝元光五年(公元前130年)十月殺灌
夫,十二月晦殺魏其,接著說“其春,武安侯病”司馬遷不說“明春”而說其春,就是因
為以十月為歲首,當年的春天在當年的十二月之後的緣故。
漢武帝元封七年(公元前104年)改用太初歷,以建寅之月為歲首,此後大約二千年間,
除了王莽和魏明帝時壹度改用殷正,武則天和唐肅宗壹度改用周正外,壹般都用的是夏正
。
農歷的大小月定月沒有規律。
陰歷定月的方法是:用朔望月周期給出,朔所在日為初壹,朔望月長約29.53059日 即29天
半多壹點,因日歷必須用整數,所以規定農歷大月30天,小月29天。因小月29天,少計了
0.53059日,就得把這少計了的0.53059日加起來放在下壹個月,那下個月就有了30天。即
使計了30天,但還多出了0.03059日,又得往下累加。這個數無論大月還是小月,都多出
這個數。那麽壹年就多出了0.36708日。三年後,就多出了1.0124日,就必須在這壹個小
月上加上壹天,於是就會出現兩個大月。即使加了這壹日後,還有0.0124日的零頭,又得
與0.53059日加起來再往後累加......如此循環不已。因此,農歷的大月小月設置很難象
公歷壹樣找到規律。