最后修订时间:2026年10月18日
简体中文 | 繁體中文 | English | 日本語 | 한국어
天文曆法基礎 · 第十四篇
文/鄺楚嘉
《史記·天官書》裡有一句話,寫得毫不含糊:歲星「十二歲而周天」。
這句話寫在兩千年前,此後一千多年,歷代治曆的人都拿它當準繩。可它不對。
一、這顆星為什麼叫「歲星」
五大行星裡,木星的腳步不快不慢。水星一年繞太陽四圈多,金星一年多,火星將近兩年;木星要十一年多,土星要二十九年多。
木星這個節奏,正好可以當鍾用。
古人把周天從西向東等分成十二份,叫十二次。木星差不多一年走一份,走到哪一份,就記「歲在某次」。這顆星因此得名歲星。
十二次的名字,與二十八宿對得上:
| 次 | 二十八宿 | 次 | 二十八宿 |
|---|---|---|---|
| 星紀 | 斗、牛 | 鶉首 | 井、鬼 |
| 玄枵 | 女、虛、危 | 鶉火 | 柳、星、張 |
| 娵訾 | 室、壁 | 鶉尾 | 翼、軫 |
| 降婁 | 奎、婁 | 壽星 | 角、亢 |
| 大梁 | 胃、昴、畢 | 大火 | 氐、房、心 |
| 實沈 | 觜、參 | 析木 | 尾、箕 |

《史記·天官書》給歲星定的一年行程是「歲行三十度十六分度之七」。
三十度又十六分之七,乘十二,得三百六十五度又四分之一。這正好是古人心目中的周天度數。
所以在古人自己的算法裡,「十二歲而周天」是圓得上的,前後不打架。
二、可木星並不照這個走
古人把周天切成三百六十五度又四分之一,是為了遷就太陽——太陽一天走一度,一年走完周天。木星不在這個刻度上。
現代測得的木星繞日一週是 11.862 年,約 4332.6 天。折算到十二次裡,木星每過一年走 1.012 次。
比一次多出 0.012 次。
這個零頭,單看一年小到測不出來。可它年年攢著。
三、攢夠八十年,就露餡了
攢到八十年上下,多出的零頭湊滿一整次。這一年,歲星本該走到下一個星次,卻提前越了過去。
古人給這個現象取了名字:超辰。多邁的那一步,叫「超一辰」。
超一次要多少年,取決於拿哪個週期值去算:
| 取法 | 超一次需 |
|---|---|
| 按現代的 11.862 年 | 85.9 年 |
| 按通行的 11.86 年 | 84.7 年 |
| 按本庫自算的 11.85657 年 | 82.7 年 |

三個數都在八十年上下,差別只在取哪一個週期。取哪個都不算出格。古人不認識 11.86 這個數,可他們從典籍的比對裡察覺到了不對。

图源:Wikimedia Commons「Dunhuang star map.jpg」(Public domain)
版权归原作者或原机构所有;如涉侵权,请联系本站删除。
《左傳》襄公二十八年留著一句:「歲在星紀而淫於玄枵。」星紀在前,玄枵在後,歲星本該待在星紀,卻往前擠進了玄枵。這個「淫」字,說的是越界。
幾百年後,劉歆把這件事算實了。《漢書·律曆志》裡留著他的一句斷語:「三十二年,歲在星紀,距辛亥百四十五歲,盈一次矣。」
句中的「辛亥」,是僖公五年正月的朔日。劉歆從那個基準點往下推,推到魯昭公三十二年,一百四十五年,歲星整整多走了一次。這一句是他逐年推下來的結果。

图源:Wikimedia Commons,Antic chinese Compass.jpg(Public domain)
版权归原作者或原机构所有;如涉侵权,请联系本站删除。
四、劉歆打了一個補丁
既然發現了,就得修。
劉歆在《三統曆》裡給歲星換了一條規矩:一百四十四年超一次,也就是一百四十四年走一百四十五次。
這條規矩保存在《漢書·律曆志》的三統曆術文裡:
推歲所在,置上元以來,外所求年,盈歲數,除去之,不盈者以百四十五乘之,以百四十四為法。
用今天的話講:先拿一百四十五乘,再除以一百四十四,得出的整數叫「積次」,是歲星走過的星次;餘下來的叫「次餘」,是這一年的零頭。從星紀起數,數到哪就是哪。
這個補丁在曆法史上是有名的一筆。東漢人邊韶在曆法討論裡評它兩句,收在《續漢書·律曆志》:「百四十四歲一超次,與天相應,少有闕謬。」
拿現代的 11.86 年去對,八十五年前後超一次;劉歆說一百四十四年。這個數並不準。
它值得記的地方在別處:這是史書上第一部完整記載下來的曆法裡,頭一回有人把木星的零頭寫進算法。
五、太歲:造一顆假星來記年
超辰還有個麻煩,出在「看」這件事上。
按十二次推算,歲星該在哪一次,是算出來的;它真在哪一次,得抬頭看。算出來的和看到的對不上,紀年的鏈條就斷一節。
於是古人另立了一顆星。這顆星不出現在天上,走法與歲星一樣快,方向相反,順著十二辰一年走一辰。
這顆假星叫太歲。《史記·天官書》裡叫它「歲陰」,《淮南子》裡叫「太陰」,後來通稱太歲。
《史記·天官書》寫「以攝提格歲:歲陰左行在寅,歲星右轉居丑」,說的就是這一對:真星右轉,假星左行,一左一右,互為鏡像。
太歲走的十二辰,就是十二地支。太歲的十二個年名,是攝提格、單閼、執徐、大荒落、敦牂、協洽、涒灘、作噩、閹茂、大淵獻、困敦、赤奮若。十二個年名配上歲陽十名,就是《爾雅·釋天》裡那一套。
按太歲定年名,就不必抬頭看星了,接著往下數就行。
有一處要分清。這裡說的太歲,是那顆假星的走位,屬曆法;後世說流年時講的「流年太歲」,借的是同一個詞,說的是另一件事。兩個「太歲」不能混。
六、最後連假星也不要了
太歲紀年甩掉了觀測,可它每十二年在十二辰上轉一圈,遇上超辰仍要調整。
真正省事的辦法,是換成干支。
十天干配十二地支,六十組一輪,自己轉自己的圈,不看天上任何一顆星。不靠觀測,就不會因為星走得不準而錯位;只要接著數,就能一直往下延。
漢章帝元和二年,公元 85 年,朝廷頒行《元和四分曆》。這一次改曆,正式廢止歲星紀年,改用干支紀年。
從歲星到太歲,再到干支,是一條撤離的路線:先是看著真星記年,接著造一顆假星代替,最後連假星也不要了。

七、十二這個數,有三個來路
一年有十二個朔望月,十二個月加起來三百五十四天多,比回歸年少十一天,閏月就是補這十一天。北斗的斗柄指向又把周天分成十二辰,這是地支月建的直接來路。再加上歲星的十二次,湊成三路。
三路里兩路看得見天,一路算得出月。讓「十二」最終穩下來的,偏偏是那顆星的不可靠。
收尾
古人用木星記年,是因為它走得穩,一眼能看出走到哪兒。等發現它並不那麼穩,就換了一顆假星;假星也有麻煩,就換成干支。
六十甲子轉起來,跟天上那顆木星再沒有關係。十一個零頭攢出來的麻煩,到此為止。
再往後講,要問一個更早的問題:古人眼裡的天,到底是什麼形狀。
A&Q
問:木星繞太陽一圈到底多少年?
答:現代測量是 11.862 年,約 4332.6 天。古人按十二年算,一年差出約五十天。
問:什麼叫歲星超辰?
答:歲星按十二年一周天推算,每年在十二次裡走一次;木星實際走得略快,每年多出約 0.012 次。攢到八十年上下,零頭湊滿一次,歲星就提前越過本該在的那個星次。這個現象叫超辰。
問:十二次和二十八宿怎麼對應?
答:十二次把周天從西向東等分成十二份,每份對應二十八宿裡的一到三宿。星紀配斗、牛,玄枵配女、虛、危,一路排到析木配尾、箕。
問:歲星紀年是什麼時候廢止的?
答:漢章帝元和二年,公元 85 年,頒行《元和四分曆》,廢止歲星紀年,改用干支紀年。
問:這裡的太歲,和民間說的「流年太歲」是一回事嗎?
答:不是。曆法裡的太歲是歲星的鏡像,一顆假想出來的星,順著十二辰走;後世講的流年太歲借的是同一個詞,說的是另一件事。
鄺楚嘉按:這一段曆法史最值得記的,是古人對付誤差的三種辦法。發現星不準,先修算法;算法補不住,造一顆聽話的假星;假星仍麻煩,乾脆換成與天象脫鉤的干支。三步走下來,「十二」這個數留住了,來路卻換了名字。
引用與出處
[1] 左傳[M]. 先秦.
[2] 爾雅[M]. 先秦.
[3] 司馬遷. 史記[M]. 西漢.
[4] 劉安等. 淮南子[M]. 西漢.
[5] 班固. 漢書[M]. 東漢.
[6] 司馬彪. 續漢書[M]. 西晉.
本文图片仅作补充说明,不作证据,也不作事实依据。
本文采用 知識共享署名 4.0 國際許可協議 (CC BY 4.0) 進行授權。
只要在轉載、傳播或依此進行演繹創作時,註明原作者為「嘉言一得(鄺楚嘉)」並附帶原始發佈鏈接,即可自由使用(含商業用途)。
文中所引用的秦漢簡牘出土照片、傳世文獻版權歸原屬方所有,不在本授權範圍內。
協議詳情參見:https://creativecommons.org
相關文章
- 三本曆法·三種時間 —— 陽曆、陰曆、干支曆,三套刻度各以什麼為準。
- 立春換歲,還是正月初一換歲? —— 「換歲」的兩套慣例並行了兩千多年。
- 立春不是一整天,只有一秒鐘 —— 交節是一個定到秒的時刻。
- 正月本來不是一月 —— 「正月」本來指歲首所在之月。
- 節與氣:二十四節氣的兩半 —— 十二個能換月,十二個不能。
- 堯帝派人看星星,是為了種地 —— 《尚書·堯典》裡那道觀測任命。
- 古人的一天,從晚上十一點開始 —— 子時是一天裡離太陽最遠的時刻。
- 鐘錶上的出生時間,不等於你出生的時辰 —— 鐘錶時間與真太陽時不是同一件事。
- 時間是怎麼產生的? —— 恆星日與太陽日,每天差出近四分鐘。
- 天上三條道:黃道、白道、赤道 —— 三條路各管一頭。
- 古人的星空:三垣與二十八宿 —— 二十八個星區,天上一套刻度。
- 沒有指南針,古人怎麼定方向 —— 磁針上船之前,方向怎麼定。
- 干支:從一棵樹到二十二個字 —— 「干支」原寫作「幹枝」,樹幹與枝條。
- 十個字配十二個字,為什麼只剩六十組 —— 陽配陽、陰配陰,一百二十剩六十。
- 木星走一圈不是十二年 —— 歲星紀年的十二隻是近似,八十年就露餡。
- 一年為什麼被切成二十四段 —— 一段十五度,二十四段一個回歸年。
英文文章:Three Calendars, Three Kinds of Time —— the three scales and what each is set to. | Ten Stems, Twelve Branches: Why Only Sixty Pairings Remain —— why ten stems and twelve branches give sixty, not a hundred and twenty. | Lichun Is Not a Day: The Solar Term Is an Instant —— a solar term is an instant, not a day. | The Gnomon and the Sun at Its Utmost —— shadow-measurement before the Dengfeng observatory. | The Twenty-Eight Mansions on the Lacquer Box from the Tomb of Marquis Yi of Zeng —— a lower bound for the four images.
相關樞紐頁:曆法術語表 | 曆法記錄:一年從哪一天算起 | 數據集與預印本
本篇全部數據,由鄺楚嘉蒐集整理。
作者:嘉言一得(鄺楚嘉)|獨立研究者,致力於可核驗的原始文獻與曆法數據歸檔。
Author: Chujia Kuang (鄺楚嘉), pen name Jiayan Yide (嘉言一得) — independent researcher devoted to archiving verifiable primary sources and calendar data.
平實記錄 · 數據集 · 預印本:GitHub / WordPress / Zenodo(DOI: 10.5281/zenodo.22788686 / 10.5281/zenodo.23028692)
Records · Datasets · Preprints: GitHub / WordPress / Zenodo
學術身份 · Academic identity:ORCID 0009-0002-7650-833X | OpenAlex A5151908354
数据来源与方法 · Data & Methods