芻論「月建」與「三正」

「月建」是一種用子、丑、寅、卯等十二地支與月份相配的紀月法,通常冬至所在的那個月(夏曆十一月)被稱為「建子月」,下個月(十二月)是「建丑月」,下下個月(一月)是「建寅月」,以此類推,直到夏曆十月為「建亥月」,循環往複。

我曾拜讀陳遵媯先生的《中國天文學史》,書中提到「月建」時認為:

北斗所指,叫做斗建。……夏曆月名,有稱為建子月、建丑月等,就是指斗建而言,建子月是含冬至的夏曆十一月的別名,這是由於冬至夜半斗柄建正北的緣故。

這一說法(見日誌《中國古代天文學習筆記(10)--逆鱗所在》)自古以來都非常普遍,但包括祖沖之、梅文鼎等人都反對這種說法,認為月建與斗柄所指的方位並無關聯。

在我看來,這一說法確實有待懷疑,我認為這一說法混淆了「斗」和「北斗」的概念,弄錯了「建」的位置。《禮記·月令》註:

建星在鬥上。

《史記·天官書》註:

建星在斗,北臨黃道,天之都關也。

這裡的「斗」是「斗宿」之斗,而非「北斗」之斗。「建星」應該是指「斗宿」的星官之一,在黃道以北非常鄰近的位置。太陽在天球上運行的最南端,即冬至點,就位於「斗」、「建星」之間。下圖就標註了「斗」、「建星」的位置:

那這又和「月建」有何關係,請容我慢慢說來。

一、《禮記·月令》

《禮記·月令》記載了月份與天象的對應關係,摘錄這一部分如下:

  • 孟春之月,日在營室,昏中,旦中……

  • 仲春之月,日在,昏中,旦建星中……

  • 季春之月,日在,昏七星中,旦牽牛中……

  • 孟夏之月,日在,昏中,日婺女中……

  • 仲夏之月,日在東井,昏中,旦中……

  • 季夏之月,日在,昏中,旦中……

  • 孟秋之月,日在,昏建星中,旦中……

  • 仲秋之月,日在,昏牽牛中,旦觜觿中……

  • 季秋之月,日在,昏中,旦中……

  • 孟冬之月,日在,昏中,旦七星中……

  • 仲冬之月,日在,昏東壁中,旦中……

  • 季冬之月,日在婺女,昏中,旦中……

我用白話文解釋一下:

  • 孟春之月,太陽處於「室宿」(營室:室宿)的位置,傍晚太陽落山時,我們可以在正南方的天空中看到「參宿」,而當太陽升起時,我們可以在正南方的天空中看到「尾宿」;

  • 仲春之月,太陽處於「奎宿」的位置,傍晚太陽落山時,我們可以在正南方的天空中看到「弧」(位於井宿),而當太陽升起時,我們可以在正南方的天空中看到「建星」(位於斗宿);

  • 季春之月,太陽處於「胃宿」的位置,傍晚太陽落山時,我們可以在正南方的天空中看到「星宿」(七星:星宿),而當太陽升起時,我們可以在正南方的天空中看到「牛宿」(牽牛:牛宿);
  • 孟夏之月,太陽處於「畢宿」的位置,傍晚太陽落山時,我們可以在正南方的天空中看到「翼宿」,而當太陽升起時,我們可以在正南方的天空中看到「女宿」(婺女:女宿);
  • 仲夏之月,太陽處於「井宿」(東井:井宿)的位置,傍晚太陽落山時,我們可以在正南方的天空中看到「亢宿」,而當太陽升起時,我們可以在正南方的天空中看到「危宿」;
  • 季夏之月,太陽處於「柳宿」的位置,傍晚太陽落山時,我們可以在正南方的天空中看到「大火」(位於心宿),而當太陽升起時,我們可以在正南方的天空中看到「奎宿」;
  • 孟秋之月,太陽處於「翼宿」的位置,傍晚太陽落山時,我們可以在正南方的天空中看到「建星」(位於斗宿),而當太陽升起時,我們可以在正南方的天空中看到「畢宿」;
  • 仲秋之月,太陽處於「角宿」的位置,傍晚太陽落山時,我們可以在正南方的天空中看到「牛宿」(牽牛:牛宿),而當太陽升起時,我們可以在正南方的天空中看到「觜宿」(觜觿:觜宿);

  • 季秋之月,太陽處於「房宿」的位置,傍晚太陽落山時,我們可以在正南方的天空中看到「虛宿」,而當太陽升起時,我們可以在正南方的天空中看到「柳宿」;

  • 孟冬之月,太陽處於「尾宿」的位置,傍晚太陽落山時,我們可以在正南方的天空中看到「危宿」,而當太陽升起時,我們可以在正南方的天空中看到「星宿」(七星:星宿);
  • 仲冬之月,太陽處於「斗宿」的位置,傍晚太陽落山時,我們可以在正南方的天空中看到「壁宿」(東壁:壁宿),而當太陽升起時,我們可以在正南方的天空中看到「軫宿」;
  • 季冬之月,太陽處於「女宿」(婺女:女宿)的位置,傍晚太陽落山時,我們可以在正南方的天空中看到「婁宿」,而當太陽升起時,我們可以在正南方的天空中看到「氐宿」。

我先舉【仲冬之月】來解釋:

站在我們地球上來看,太陽每年都會沿著黃道運行一周,在這一個大周天內,太陽會依次停留在「角亢氐房心尾箕……」等二十八個星宿,叫做「日躔(chán)」,現代稱為「太陽視運動」。

所謂「日在斗」,就是在仲冬月的月初太陽會運行到「斗宿」這個位置。由於我們地球在轉,以自己為參照物,我們會覺得整個天球和太陽在一起轉動,仲冬月初太陽剛要從東方升起時,清晨的天空應該是這樣:

我們在正南方的天空會看到「軫宿」,然後太陽和整個天球會一起自東向西轉動(忽略太陽本身在天球上的運動,假設他一直處在斗宿),等到落山時,天空會變成這樣:

這樣我們在正南方的夜空就會看到「壁宿」。

細心的小夥伴會發現兩幅圖上星宿的數量不一樣,這是因為仲冬月是一年中白晝最短,黑夜最長的,所以白天整個天球實際上只滾動了12個刻度(假設每個星宿等寬,當然實際上並不是),而黑夜卻要滾動16個刻度,如果是夏天就會反過來。

二、月建

通過上圖,我們已經能明白「日在斗」的意思,那麼接下來我來說說我對「月建」的理解。

太陽運行的軌跡是個圓,我們把他看成一個錶盤,並12點鐘方向標註為「子」,接下來1點鐘方向就是丑,2點鐘是寅,3點是卯等。已知仲冬月時太陽在「斗宿」的位置,那我們在錶盤外面依次寫上對應的二十八星宿名(逆時針),就會得到下面這張圖:

此時,「斗宿」、「建星」就會位於「子」的位置,所以仲冬月是「建子月」。

同理,季冬月太陽在「女宿」,「建星」位於「丑」的位置,所以是「建丑月」:

而孟春月太陽在「室宿」,「建星」位於「寅」的位置,所以是「建寅月」:

以上是我對「月建」的理解。

三、三正

夏、商、周三代各有曆法,夏曆把「建寅月」作為歲首,殷歷把「建丑月」作為歲首,而周曆則把「建子月」作為歲首,這三種設歲首的曆法被合稱為「三正」。

那為什麼用「建星」來區分月份呢,我猜這是周人的做法。

「建星」正好位於冬至點,在周人看來冬至是陽氣最弱的時候,過了冬至,陽氣漸盛,所以周人把冬至當作一年的起始,而此時太陽正好位於「建星」這個冬至點,所以把中氣冬至所在的這個月(夏曆十一月)當作「子月」開始計算,一直類推到「亥月」為一個輪迴。這便是「周正」,也叫「天正」。

「殷正」與「周正」不同,殷商人使用以「大寒」為中氣的月份(夏曆十二月)為歲首,因為這天是最冷的,從「大寒」往後,天氣漸暖,殷商人覺得這才意味著春天到來。「殷正」又被稱為「地正」。

現代農曆的正月是根據「夏正」來的,其使用的中氣是「雨水」,「夏正」又稱「人正」。秦代曾經仿效周代,把正月又提前了一個月,把夏曆十月變成歲首,得虧大秦沒有延續太久,從漢武帝開始又恢復了「夏正」,此後就沒再怎麼變過(武周時期曾改用「周正」,十年而廢),不然今天還會有一種「建亥」的「秦正」或「漢正」。

有了「建子」為歲首的「周正」,周人倒推殷商和夏,把上兩代曆法分別稱為「建丑」和「建寅」。我估計夏商兩代肯定不會有這種說法,因為如果他們也要選擇類似的說法,幾乎肯定不會選擇「建星」,而會選「女宿」和「室宿」,殷商大概會稱「女子月」,夏大概會稱「室子月」。

——————————

以上就是我對「月建」和「三正」的一些看法,芻蕘之見,還請大方指正。


推薦閱讀:

TAG:曆法 | 夏曆 | 農曆 |