報告者是師大國文系白右尹,地點於清園(復興南路二段:捷運木柵線科技大樓站與大安站中間)歡迎對於史記或者中國古代曆法有興趣的朋友們來參與,欲參與朋友請在本文章回應處,或者留言版留下信箱聯絡方式,以方便通知參與囉。
中國古代曆法常識十講 第一講 文史學習者要學點古代曆法常識 古風文史轉載 榻鼻子
古風是文史愛好者的論壇。來玩的朋友很多是大學歷史系、中文系的同學和中學的歷史、語文教師,都是有志于深入學習中國古代歷史和文學的人,和愛好國學(以中國古代文獻為主要研究對象的學問)的人。這些朋友除了要有比較深厚的理論基礎和豐富的歷史或文學知識之外,還必須具備一些與文史有關的專門知識。中國古代曆法就是這種專門知識之一。為什麼愛好文史的人必須學一點中國古代曆法常識呢?
第一,是為了讀懂中國古代的史書和文學典籍。例如《左傳》僖公五年說:“春王正月辛亥朔日南至”,文公六年說:“閏以正時”,襄公二十八年說:“歲在星紀”。這裏的“朔”、“閏”、“日南至”、“歲”、“星紀”等是什麼意思?又如《漢書•五行志》記載,西漢二百一十二年中共發生日食五十三次,其中發生在朔日的十四次,晦日三十六次,先晦一日三次。古代曆法中的“朔”,是陰曆每月初一日,即月亮運行到了太陽與地球中間,而這三個天體位于一條直綫的那一天,所以日食按自然規律應發生在朔日,為什麼兩漢以日食竟然多數提前一天甚至兩天發生?再如我們翻開《資治通鑒》,它的第一卷下面就注明:“起著雍攝提格,盡玄默困敦”,這些古板詰據的字眼是些什麼東西?如果我們不具備一些古代曆法常識,就根本無法看懂這些著名的文化典籍。
第二,是為了弄清歷史事實。舉例說,《尚書•牧誓》講到:“時甲子昧爽,王朝至於商郊牧野,乃誓。”這裡說的是周武王伐紂的時間。這個關係到西周建國、商朝滅亡和我國編年史起點的日期,究竟是那一天?屈原的《離騷》說:“攝提貞于孟陬兮,惟庚寅吾以降。”這是詩人自述的出生年月日,到底是那年那月那日?也只有懂得一些古代曆法常識,才能弄清。
第三,是可以校正古代典籍中的訛錯。古人記事,年月日都交待得很具體。但年代久遠,輾轉抄印,難免不發生差錯。如《三國志•高貴鄉公傳》說,正元二年八月,辛未,遣鄧艾出師抵抗蜀薑維的侵犯。戊辰,“復”遣太尉司馬孚為鄧艾的後繼,以示聲援。如果不懂曆法,在這裏就看不出問題。可是按曆法,這年八月辛未是二十二日,戊辰是十九日。為什麼後繼部隊先派出。出師反而在後呢?這裡必定有錯誤。又如《資治通鑒》卷十二、漢高祖十一年三月,丙午,立皇子恢為梁王。如果沒有曆法知識,在這裡也發現不了什麼問題。但一查曆表,這年三月的丙午日是第五十一日。一個月中怎麼會有五十餘天?這裏也肯定有錯。原來《通鑒》這件事抄自《史記》,據《史記•漢興以來諸侯王年表》,丙午上有“二月”二字(殿本及以殿本為母本為各種版本作“三月”,“三”乃“二”之誤),《通鑒》給抄漏了。二月丙午是二月二十日。
第四,是為了理解歷史事件的因果關係。中國古代史書是根據古代曆法來敘述歷史事件和人物活動的,前後的歷史事件之間有著必然的聯繫。如果不瞭解古代曆法知識,就會搞不清歷史現象的因果關係。如《史記•項羽本紀》和《秦楚之際月表》說,項梁起兵後,接受首先起義的陳勝的節制。秦二世二年四月,項梁“聞陳王定死”,于是召集各路將領到薛會議,自立為武信君。可是我們讀《史記•陳涉世家》,其中明明白白記載二世二年“臘月(十二月),陳王之汝陰,還至下城父,其禦莊賈殺以降秦”。為什麼項梁在四月就聽到了陳勝已死的確信呢?這是因為秦的曆法,以十月為一年的首月,九月為末月,秦二世二年十二月就是夏正元年的十二月,所以在二年四月之前。這樣,因果關係就清楚了
第二講 什麼是曆法?古今曆法的三大系統
什麼是曆法?曆法研究的對像是什麼?簡單說來,曆法是關於時間的計算方法的科學。比如今天是2004年7月2日,那位清末學者是光緒三十三年三月初九日出生的,唐朝從公元618年到907年共統治了290年等等,這些就是時間。這些時間的計算單位和數字是怎麼來的?是從與人類關係最密切的三個天體——太陽、地球、月亮的運轉周期的比例計算出來的。計算時間的三個基本單位,年指地球繞太陽公轉一周,月指月亮繞地球公轉一周,日指地球自轉一周。這些本來是小學生都懂的常識,為什麼說是一種專門學問?其實並不那麼簡單。準確地計算時間是一件十分複雜的事,複雜的原因在於太陽、地球、月亮這三個天體運轉周期的比例都不是整數,誰對誰都無法除盡。我們通常說一年12個月,360日,這只是一個概數。假如真的一個月是30整日,一年是12整月或360整日,那麼曆法就不成其為一門學問了。實際情况却是:地球繞太陽一周是地球自轉一周的365倍多一點,相當於月亮繞地球一周的12次再加11日多一點;月亮繞地球一周是地球自轉一周的29倍多一點。它們相互間的比例都有一個除不盡的尾數,這就需要進行很複雜的計算,使年、月、日的周期能够相互配合起來,幷且都能用整數進位,便于人們計算、使用,這就是曆法。所以又可以說曆法是計算太陽、地球、月亮運轉周期的比例的學問,是以這三個天體的運轉比例為研究對象的。用不同的方法來計算這種比例關係,就是不同的曆法。
古今中外有多少種曆法,我們沒有統計過。總之一個民族有一個民族的曆法,一個時代有一個時代的曆法。時代愈近,科學愈發達,測試手段愈先進,曆法就愈科學。我們中國從古到今使用過的曆法,就有一百多種。不過不管有多少種曆法,都可以把它們分別歸到以下三大系統中去:陽曆、陰曆、陰陽合曆。這是因為計算時間,要麼以地球繞太陽公轉的周期為基礎,要麼以月亮繞地球公轉的周期為基礎,要麼把兩種周期加以調和。前者屬于陽曆系統,後者屬于陰曆系統,調和者則屬于陰陽合曆系統。
陽曆,是以地球繞太陽公轉的周期為計算的基礎的,要求曆法年同回歸年(地球繞太陽公轉一周)基本符合。它的要點是定一陽曆年為365日,機械地分為12個月,每月30日或31日(近代的公曆還有29或28日為一個月者,例如每年二月),這種“月”同月亮運轉周期毫不相干。但是回歸年的長度幷不是365整日,而是365.242199日,即365日5時48分46秒餘。陽曆年365日,比回歸年少了0.242199日。為了補足這個差數,所以曆法規定每4 年中有一年再另加1日,為366日,叫閏年,實際是閏一日。即使這樣,同實際還有差距,因為0.242199日不等于1/4日,每4年閏1日又比回歸年多出約0.0078日。這麼小的數字,一年兩年看不出什麼問題,如果過了100年,就會比回歸年多出約19個小時,400多年出生近75個小時,相當於3個整日多一點,所以陽曆曆法又補充規定每400年從100個閏日中减去3個閏日。這樣,400陽曆年閏97日,共得146097日,只比400回歸年的總長度146096.8796日多2小時53分22.5秒,這就大體上符合了。這種曆法的優點是地球上的季節固定,冬夏分明,便于人們安排生活,進行生産。缺點是曆法月同月亮的運轉規律毫無關係,月中之夜可以是天暗星明,兩月之交又往往滿月當空,對于沿海人民計算潮汐很不方便。我們今天使用的公曆,就是這種陽曆。
陰曆,是以月亮繞地球公轉的周期為計算的基礎的,要求曆法月同朔望月(月亮繞地球公轉一周)基本符合。朔望月的長度是29日12小時44分2.8秒,即29.530587日,兩個朔望月大約相當于地球自轉59周,所以陰曆規定每個月中一個大月30日,一個小月29日,12個月為一年,共354日。由於兩個逆望月比一大一小兩個陰曆月約長0.061日(大約88分鐘),一年要多出8個多小時,三年要多出26個多小時,即一日多一點。為了補足這個差距,所以規定每三年中有一年安排7個大月,5個小月。這樣,陰曆每三年19個大月17個小月,共1063日,同36個朔望月的1063.1008日,只相差約2小時25分9.1秒了。陰曆年同地球繞太陽公轉毫無關係。由於它的一年只有354日或355日,比回歸年短11日或10日多,所以陰曆的新年,有時是冰天雪地的寒冬,有時是烈日炎炎的盛夏。今天一些阿拉伯國家用的回曆,就是這種陰曆。
陰陽合曆,是調和太陽、地球、月亮的運轉周期的曆法。它既要求曆法月同朔望月基本相符,又要求曆法年同回歸年基本相符,是一種綜合陰、陽曆優點,調合陰、陽曆矛盾的曆法,所以叫陰陽合曆。我國古代的各種曆法和今天使用的農曆,都是這種陰陽合曆。
第三講 中國古代曆法的基本內容
中國古代曆法是一門很專門的學問,是古天文學的一個分支,內容十分豐富,涉及到天文、數學、物理等各個科學領域。學習中國古代文史的人,只學一點中國古代曆法與文史有關的內容就可以了,不可能也無必要搞得很深。
(1)年、歲和歲實。
在中國古代曆法和古代史書中,年和歲有不同的意思。年相當於我們今天的陰曆年,一年12或13個月,354或384日。歲相當于今天的陽曆年,一年12個月,365或366日。《尚書•堯典》說:“期三百有六旬有六日。”司馬遷在《史記•五帝本紀》中改作“歲三百六十六日”,說明期就是一歲。年和歲都是曆法術語,是時間的計算單位,是用整日、整月進位的,不等於回歸年的長度。回歸年的長度,在古代曆法中叫“歲實”。不過由於測量技術的落後,當時各種曆法所定的“歲實”都大於回歸年的實際長度。曆法一年或一歲都必須用整日、整月計算,使用時才方便,這就不可能同回歸年的日數完全相符,所以曆法只要求若干曆法年的平均日數同回歸年接近就行了。
(2)置閏法。
前面說過,中國古代的曆法和今天的農曆,都屬於陰陽合曆系統,即調合陰、陽曆矛盾的曆法。太陽、地球、月亮的運轉周期本來就不能配合,陰陽合曆又如何去調合呢?然而我國古代曆法用十分巧妙的方法把二者調和得非常協調,這個方法就是置閏法。《尚書•堯典》說明:“以閏月定四時成歲”,《左傳》文公六年說:“閏以正時”,就是說的置閏法。
中國古代曆法的月,同朔望月基本符合,兩個月一大一小共59日,這一點與陰曆完全相同。但如果完全按照陰曆安排一年12個月,354日,曆法月雖然同朔望月基本符合,可是一年比回歸年却少了11日多,三年就少了一個月多,過十六七年就會在三伏天裡過新年,曆法年同地球繞太陽公轉的規律就亂套了。為了既使曆法月同朔望月符合,又使曆法年同回歸年符合,就用置閏的方法來補足這每年11日多的差額。閏者多餘也,就是到一定時候增加一個多餘的月,不致使曆法年同回歸年完全脫節。置閏的方法,是逐步完善的。起初,例如商周時期,似乎只知道三年一閏,到戰國時就已經知道十九年七閏的閏周了。19年7閏,共235個朔望月。按中國古代大多數曆法採用的“四分曆”的歲實和朔策(朔望月的長度),19回歸年同235朔望月是相等的,它們的關係是:
19×365.25=235×499/940=6939.7529
也就是說,陽曆的19年等於陰曆的19年,陰陽曆就完全調和起來了。
19回歸年同235朔望月的日數完全相等,那就說明,任何節氣,經過19年又必然回到同一天去。假如今年正月朔日朔旦立春,過19年後也一定是正月朔日立春,只是合朔和交節的時刻相差了0.25日,必須經過4個19年(76年),合朔和交節的時刻才能又回到原來的一點(朔旦)上。因此中國古代曆法把19年叫做一章,4章76年叫做節。
十九年七閏的閏周,同今天測用現代儀器實例的長度也基本符合。如19回歸年總長6939.6018日,235朔望月總長6939.6879日,二者相差2小時4分16.3秒了。
閏月放在一年中的什麼時候?西漢中葉以前都放在年末,如殷周叫“十三月”,秦和西漢初叫“後九月”。從漢武帝施用太初曆開始,就規定閏無中氣之月。此法一直沿用到今天。
十九年七閏法是我國古代曆法的主要特點之一。
(3)分至和氣
分至就是二分二至,即冬至、春分、夏至、秋分,以此將一回歸年的長度劃為四等分。這也是我國古代曆法的主要特點和關鍵內容,屬於陽曆系統。一年之中分至定氣準了,曆法就比較準確了,而分至中的關鍵又在於定冬至點。定冬至點的辦法比較複雜,要進行天文學上的測試,不是三言兩語說得清楚的。在我國古代,定冬至點的辦法也有一個發展過程。起初,人們大概是以冬天日影最長的一點為冬至點,到我國戰國時天文學發展了,就改用日月相會於某一星座為冬至點了。冬至點是一回歸年的起點,地球繞太陽一周再回到冬至點的長度,就是一回歸年。這個長度的中分處就是夏至點,二分則在二至的中點,一定是晝夜平分的那一天。
氣是包括分至在內在二十四個曆法術語,用它們把一回歸年劃為二十四等分。下面是二十四氣表:
22冬至 23小寒 24大寒 1立春
2雨水 3驚蟄 4春分 5清明
6穀雨 7立夏 8小滿 9芒種
10夏至 11小暑 12大暑 13立秋
14處暑 15白露 16秋分 17寒露
18霜降 19立冬 20小雪 21大雪
這些名稱表示了一歲之中我國黃河流域氣候、農事與自然現象的變化,如驚蟄意味蛇蟲冬眠已醒,芒種說明種子破胎而出,霜降表示開始打霜等等。一回歸年分為二十四氣,兩氣間的長度為十五日多。氣是陽曆,同地球繞太陽公轉一致,每年所在的位置是不變的。二十四氣又分為節氣、中氣兩類,以上凡奇數者為節氣,偶數者為中氣。今天人們習慣上把中氣也稱為節氣,叫二十四節氣。氣的安排也是逐步完備的。春秋時大概還只知道安排二分二至,戰國時則增加了四立:立春、立夏、立秋、立冬,到西漢時二十四節氣變很完整了,這見於《淮南子•天文訓》。
(4)四時
我國古代曆法把一曆法年分為四時,現在叫四季,每季三個月,有閏之季四個月。正二、三月為春,四、五、六月為夏,七、八、九月為秋,十、十一、十二月為冬。每時三個月又可稱為孟、仲、季月,這樣每個月都可以用時名叫出,如孟春是正月,仲夏是五月,季秋是九月等。時是跟曆法月走的,同天體運轉規律沒有直接關係。我國古代史書中凡提到月份時總是冠以時名,所以讀古書時必須瞭解這一點。
(5)干支和太歲
學習古代曆法和閱讀古代史書,時刻同干支打交道。什麼是干支?是十天干和十二地支的簡稱、簡寫。這是二十二個中國特有的符號,開始用於人名,後來主要用在曆法上。十干是甲、乙、丙、丁、戊、己、庚、辛、壬、癸,十二支是子、丑、寅、卯、辰、巳、午、未、申、酉、戌、亥。十干十二支相互交錯組合,成為六十個複合符號,就是我們今天說的六十花甲或六十甲子。
60甲子表如下:
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癸亥
要學點古代曆法知識,十干十二支和六十甲子的口訣,應當按順序背誦下來。因為古代曆法的年、月、日,都是按六十甲子表周而復始地排下來的。古代史籍的紀年,序數與干支並用,如明嘉靖三十三年,又可以只稱嘉靖甲寅;而紀日就只用干支,稱某月甲子,某月戊午,或某月某日甲子,某月某日戊午,決不單叫某月幾日。干支口訣不熟,學習古代曆法就寸步難行。
歲星紀年和太歲紀年也是學習中國古代文史的人必須知道的。因為在閱讀古代史書時會經常碰到它們。歲星紀年是從歲星(木星)的運行周期演化而來的。歲星繞太陽公轉一周約十二年(實際是11.86年),因此古人把歲星運行的軌道黃道附近劃分為十二次,又叫黃道十二宮(木星的行宮),各取一個名稱。自左至右十二次的名稱是:
星紀 玄枵 諏訾 降婁
大梁 實沈 鶉首 鶉火
鶉尾 壽星 大火 析木
木星每運行一次,大約相當於地球公轉一周,以這些星次的名稱來紀年,就是歲星紀年。如前而說到的“歲在星紀”是說丑年,“歲在降婁”是說戌年。
鑒於歲星運行方向同地球正相反,歲星紀年就用起來很不方便,於是人們把歲星運行的軌道自右至左劃分為十二等分,叫十二辰,與十二支相應,亦各取一個名稱。十二辰是:
攝提格 (寅) 單 閼(卯) 執 徐(辰) 大荒落(巳)
敦 牂 (午) 協 恰(未) 涒 灘(申) 作 噩(酉)
淹 茂 (戌) 大淵獻(亥) 困 敦(子) 赤奮若(丑)
由於歲星並不是按十二辰的方向運行的,人們就設想有一個假歲星在十二辰的軌道上運行,每運行一辰就是一年,這個假歲星就叫“太歲”,用十二辰紀年,就叫太歲紀年。前面舉到的《資冶通鑒》第一卷說“起著雍攝提格,盡玄黓困敦”,是說起于戊寅年,止於壬子年。
十二辰又稱歲陰、相當于十二支。為了同歲陰相配合,人們又製造了十歲陽,相當於十干。歲陽是:
閼逢(甲) 旃蒙(乙) 柔兆(丙) 强圉(丁) 著雍(戊)
屠維(己) 上章(庚) 重光(辛) 玄黓(壬) 昭陽(癸)
這樣,歲陰歲陽交錯組合,就成了六十甲子的別名,如閼逢攝提格就是甲寅,昭陽作噩就是癸酉。歲陰、歲陽這些怪僻的名詞是些什麼意思,漢代的高誘、李巡就已經不甚了然了,初學曆法也不必都記下來,碰到時查查對照表就行了。
(6)月建。
月建是人們把陰曆的十二個月同上面說的黃道附近的十二辰聯繫起來而規定出來的。月建有夏、殷、周曆的不同。按夏曆,將北斗星的斗柄指向寅的叫正月,卯叫二月,……,丑叫十二月,就稱正月建寅,二月建卯。殷曆正月建丑,周曆正月建子,以下各月依次類推。這就是月建。古代曆法把正月建寅之曆稱為人正曆(包括秦漢以後的各種曆法和今天的農曆),建丑之曆為地正曆,建子之曆為天正曆。月建不同的曆法,具體月份的時間是不一樣的。如建寅曆的七月,在伏天的末尾,立秋、處暑之間,而建子曆的七月,則還是百花盛開的初夏。《詩經》的《七月》篇說:“七月流火,九月授衣。”有人根據它是周詩而定此七月的建子的周曆。可是周曆七月,正當初夏,“火”(指大火,即心宿)處於正南方位置最高的地方,並沒有“流”,九月以後才逐漸偏西向下降行,“七月流火”說不過去。如果說《七月》是建寅的夏曆,則同天象符合起來了。所以讀先秦古籍,遇到月份,必須先弄清月建,才能確定具體時間。
(7)曆元。
曆元是一部曆法推算、排列曆表的起點。曆法學家們往往要在歷史上找到一個理想的時間,作為自己的曆法的推算起點,然後依次往後排列年、月、日、時。我國古代的各種曆法都以冬至為一歲之始,朔旦為一月之始,夜半為一日之始,所以,最理想的曆元,是一年冬至的年、月、日、時都適逢甲子,至少也要求都逢“子”,從曆元開始,年、月、日、時都按六十甲子表順推,周而復始,循環往復,以至無窮,而又與天體運行吻合。但一年冬至的年、月、日、時都逢“子”的機會很少,都逢甲子的機會更是千年難遇,因此許多曆法往往把曆元定在幾千幾萬年以前,例如顓頊曆從曆元到唐元二年已積年2761019年。
(8)歲差和贏縮
古人沒有現代儀器,太陽、地球、月亮運行的周期完全靠目測,近代術語叫做太陽視運動。比如目測歲實的最簡便的方法是以冬天日影最長的一點為起點,經過一個周期再回到這一點的長度,就是目測的歲實,又可叫做太陽年。太陽年不等於回歸年。因為地球沿著軌道運動時,受到太陽和月亮引力的影響,地軸以每年約50 角秒的速度向西移動,從今天的冬至點到明年的冬至點,太陽並沒有回到原來的地方,而是西退了約50.2”。這種現象叫做“歲差”。這是我國東晉時天文學家虞喜首先發現的。當人們發現歲差後,就知道了太陽視運動在變化之中,應當求出太陽年的平均長度,這才産生了回歸年這個天文數據;同時也就懂得了為什麼古代天文學家們測量的歲實老是一致不起來,不同時代的古書記載的恒星位置為什麼不同等等。這對讀懂古書很有幫助。
地球繞太陽公轉一周的平均長度雖是365.242199日,但它冬夏運行的速度並不一樣,冬天轉得快些,夏天轉得慢些。例如現代儀器測驗證明,公曆9月16日正午到17日正午只有23時59分39秒,而12月23日正午到24日正午,卻有24時0分30秒,快慢的相差達51秒。這種現象叫“贏縮”,快的時候叫贏,慢的時候叫縮。我國在戰國時就已經發現了贏縮現象,北齊時天文學家張子信在海島上一日不懈地觀測了三十餘年,確鑿無誤地加以證實。由於發現了贏縮規律,人們在制定曆法,安排分至和其他20個節氣時,就知道了不應以地球公轉的時間長度來等分,而應以地球公轉軌道的周長來等分,這就使曆法愈來愈科學了。
(9)朔望幾弦晦和時辰。
據古代曆法,一月之中有幾日分別叫做朔、上弦、望、下弦、晦。這是根據太陽、地球、月亮運行的不同角度而定的。初一日叫“朔”,取日月合朔後的第一日之義,即月亮居中三個天體成180°;十五或十六日叫“望”,《釋名•釋天》說:“日在東,月在西,遙相望”,則是地球居中成180°;初七或初八日為上弦,二十二或二十三日為下弦,是三個天體按不同的方向成90°;三十或二十九日為晦,一個月的最後一天,取義於月光隱去。因此,日食必發生在朔日,月食必發生在望夜,否則就是曆法不准了。
周以前的文獻和金文中,往往以朔、望、上下弦把一個月分成四段:從朔到上弦叫“初吉”,從上弦到望叫“既生魄”(魄有時寫為霸),從望到下弦叫“既望”,從下弦到晦叫“既死魄”。漢以後這種分法不用了,但學習中國古代史者亦應當瞭解。
古人把一日分為十二時,與一年的四時名同實異,每時相當於今二小時。時以十二支命名,故又稱時辰。從夜半起到次日夜半止。依次稱為子時、丑時,……,亥時。子時大約相當于今北京時間23點到1點,亥時相當21點到23點。另外,一日又可以分為100刻,每刻15分,每分60秒。這裏的刻、分、秒比今天公曆的刻、分、秒都稍小,不能混同。時刻分秒劃分及其長短,都是人們為了計算時間的方便而規定的,同天體運行沒有關係。
中國古代曆法常識
一、 基本概念
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個不同的位置。
《漢書•曆律志》提到過節氣與星次的關係,如太陽運行星紀初點交大雪,運行星紀中央就交冬至,運行到玄枵初點交小寒,運行到玄枵中央就交大寒,《律曆志》所提到的星次和節氣對照如下:
1.星紀:大雪冬至
2.玄枵:小寒大寒
3.諏訾:立春驚蟄
4.降婁:雨水春分
5.大梁:穀雨清明
6.實沈:立夏小滿
7.鶉首:芒種夏至
8.鶉火:小暑大暑
9.鶉尾:立秋處暑
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.太歲紀年法
古人有所謂十二辰的概念,就是把黃道附近一周天的十二等分由東向西配以子丑寅卯等十二辰,其安排的方向正好和十二次相反。二者對照如下表:
十二次 十二辰
1.星紀 丑
2.玄枵 子
3.諏訾 亥
4.降婁 戌
5.大梁 酉
6.實沈 申
7.鶉首 未
8.鶉火 午
9.鶉尾 巳
10.壽星 辰
11.大火 卯
12.析木 寅
歲星由西向東的運行,和人們所熟悉的十二辰的方向正好相反,所以歲星紀年法在實際生活中應用起來很不方便。為此,古代的天文學家便設想出一個假歲星叫“太歲”,讓它和真歲星“背道而馳,這樣就和十二辰的方向順序相一致,並用它來紀年。太歲是《漢書•天文志》的叫法,《史記•天官書》叫歲陰,《淮南子•天文訓》叫太陰。根據《漢書•天文志》記載的戰國時天象記錄,某年歲星在星紀,太歲便運行到析木(寅),這一年就是“太歲在寅”,第二年歲星運行到玄枵,太歲便運行到大火(卯),這一年就是“太歲在卯”
此外古人還為“太歲在寅”、“太歲在卯”等12個年份取了專門名稱,如攝提格、單閼等,對應如下表:
太歲年名 太歲位置 歲星位置
攝提格 寅(析木) 星紀(丑)
單閼 卯(大火) 玄枵(子)
執徐 辰(壽星) 諏訾(亥)
大荒落 巳(鶉尾) 降婁(戌)
敦牂 午(鶉火) 大梁(酉)
協洽 未(鶉首) 實沈(申)
涒灘 申(實沈) 鶉首(未)
作噩 酉(大梁) 鶉火(午)
閹茂 戌(降婁) 鶉尾(巳)
大淵獻 亥(諏訾) 壽星(辰)
困敦 子(玄枵) 大火(卯)
赤奮若 丑(星紀) 析木(寅)
單閼音chan2 yan1, 執徐音zhi2 chu2 牂音zang1 涒音tun1
屈原《離騷》中有“攝提貞于孟陬兮,唯庚寅吾以降”。一般認為這裏的攝提是太歲年名裡的攝提格,孟陬指夏曆正月建寅之月;庚寅是生日的干支。所以屈原正好生於“寅年寅月寅日”。
但要注意,這裡的寅年不是干支紀年裡的“寅”年,而是指太歲在寅(析木)之年。
大概在西漢年間,曆法家又取了閼逢、旃蒙等十外名稱,叫做歲陽,依次和上述十二個太歲年名相配,方法同六十甲子相同,組成六十個年名,以閼逢攝提格為第一年,旃蒙單閼為第二年。六十年周而復始。這種紀年法自西漢太初元年就開始使用了。
《爾雅》記載十個歲陽和十干對應,列表如下:
歲陽 十干
閼逢 甲
旃蒙 乙
柔兆 丙
强圉 丁
著雍 戊
屠維 己
上章 庚
重光 辛
玄黓 壬
昭陽 癸
旃音zhan1 黓音yi4
太歲與十二辰的對應如下:
太歲年名 十二辰
攝提格 寅
單閼 卯
執徐 辰
大荒落 巳
敦牂 午
協洽 未
涒灘 申
作噩 酉
閹茂 戌
大淵獻 亥
困敦 子
赤奮若 丑
有時這些年名可用干支來表示,閼逢攝提格為甲寅年,旃蒙單閼為已卯年。創制這些名字是為了表示歲星逐年所在方位的,但後來發現歲星並不是每年整走一個星次,所以就廢而不用,而改用干支紀年了。但後人還有用這些古年名的,是根據當年的干支來對照的,已經失去了這些年名的本來意義了。如司馬光《資治通鑒》176卷《陳紀》十下注:“起閼蒙執徐,盡著雍涒灘,凡五年”,這是說從甲辰到戊申共五年。
c.干支紀年法
干支紀年以六十甲子周而復始,據說最早應用於西漢,到了東漢元和二年(85年),朝廷下令在全國範圍內推行干支紀年,一直到今天仍在使用。有些史書記載西漢以前的干支紀年,是後人推算出來的。
七、三正
春秋戰國時代有所謂夏曆、殷曆和周曆,三者主要的區別在於歲首的不同,所以又稱“三正”。周曆以通常冬至所在的建子之月(即夏曆的十一月)為歲首,殷曆以建丑之月(即夏曆的十二月),夏曆以建寅之月(即後世常說的陰曆正月)。周曆比殷曆早一月,比夏曆早兩個月。由於三正歲首的月建不同,四季也不同。下表是三曆季節與月份的對應:
月建 子 丑 寅 卯 辰 巳 午 未 申 酉 戌 亥
周曆 正 二 三 四 五 六 七 八 九 十 十一 十二
季節 春 春 春 夏 夏 夏 秋 秋 秋 冬 冬 冬
殷曆 十二 正 二 三 四 五 六 七 八 九 十 十一
季節 冬 春 春 春 夏 夏 夏 秋 秋 秋 冬 冬
夏曆 十一 十二 正 二 三 四 五 六 七 八 九 十
季節 冬 冬 春 春 春 夏 夏 夏 秋 秋 秋 冬
三正是春秋戰國時代不同地區所使用的不同的曆法制度。瞭解三正是有必要的,先秦古籍裡所以紀時的曆日制度並不統一。《春秋》或《孟子》多用周曆,《楚辭》和《呂氏春秋》用夏曆。《詩經》要看具體詩篇,如《小雅•四月》用夏曆,《豳風•七月》周曆和夏月並用。
《左傳成公八年》記載“二月無冰”,史官把這一罕見的天象載入史冊,很顯然這個二月指的是周曆二月即夏曆十二月而言。如果是夏曆二月,則已經是“東風解凍”,用不著大書特書。又如《莊公七年》說“秋,大水,無麥苗”,這也是指周曆,周曆秋季相當於夏曆的五六月,晚收的麥子和“五稼之苗”有可能被大水“衝殺”,如果是夏曆秋季,就不可解了。同樣的理由《孟子•滕文公上》所說的“江漢以濯之,秋陽以暴之”的秋陽是指夏曆五六月的炎日。同一史實,在《春秋》和《左傳》所記月的時月常有出入,同屬《左傳》的記時也有差異。《春秋隱公六年》說“冬,宋人取長葛”, 《左傳》說“冬,宋人取長葛”; 《春秋父僖公五年》說“春,晉侯殺世子申生”,同一事件在《左傳》被記在僖公四年十二月,這說明《左傳》依據的史料有用夏曆的。
在戰國秦漢之際有所謂“三正論”,認為夏正建寅、殷正建丑、周正建子是夏商周三代輪流更改正朔,因“王者始起”要“改正朔”、“易服色”以表示受命於天。秦始皇統一中國後,改以建亥之月(即夏曆的十月)為歲首,但夏正比較適合農事季節,所以並不稱十月為正月(秦朝管正月叫“端月”),不改正月為四月,春夏秋冬的搭配仍和夏正相同。漢初沿襲秦制。《史記•魏其武安侯列傳》載漢武帝元光五年(公元前130年)十月殺灌夫,十二月晦殺魏其,接著說“其春,武安侯病”司馬遷不說“明春”而說其春,就是因為以十月為歲首,當年的春天在當年的十二月之後的緣故。
漢武帝元封七年(公元前104年)改用太初曆,以建寅之月為歲首,此後大約二千年間,除了王莽和魏明帝時一度改用殷正,武則天和唐肅宗一度改用周正外,一般都用的是夏正。
- Mar 03 Fri 2006 12:18
淡江史記讀書會將於本週日3月5日下午3點討論史記曆書歡迎參加
close
全站熱搜
留言列表
禁止留言