位置︰ > 主頁 > 雜文區 >千里馬和萬里長城

千里馬和萬里長城

——上古中國的「一里」有多長?

兩年之前,TG 出於一個偶然的念頭,而嘗試估算了一下中國古代文獻上所出現的「一里」之長,只有約當我們今日的「75 公尺(meter)」,並寫下了一篇雜文從《通典》中的「扶桑國」聊起。當時 TG 在文末作了一個小小的附注,即無法從文獻上徵得這個數字的證據,只能用作一種操作上的合理假設;說到頭來,TG 在那篇文章中居然作出與一般認知如此之大的數字,其實自己還是感到相當「心虛」的。不過,最近 TG 在閱讀商務出版社的《數之起源》一書之後,啟發出了另一種可能的答案。

先直接跳到結果。TG 認為,上古秦漢時期的中國,用作長度的「一里」,約當於今日的「180 公尺」,即「0.18 公里」。這個數字比起一般公認的「1 華里等於今日的 0.5 公里」,只有不到一半的長度。


張家山出土的漢簡《筭數書》

1983 年底,在中國湖北張家山所挖掘出土的漢墓中,發現了作為墓主陪葬物的七冊竹簡書。這當中有一部簡冊的標題,明白地寫作《筭數書》——這是中國數學史研究人員最大的喜悅,可以作為公元前三世紀中國數學發展的第一手史料。從這部《筭數書》的整體內容來看,我們還十分肯定《九章算術》的源頭,絕對可以從現存最早的十三世紀南宋刻版,一舉上溯一千四百年到秦漢之交的年代。

TG 在此不詳述該書的考古成就,直接把《筭數書》中的文字,當作秦漢時期中國人生活上的確切資料,並藉以聊聊「尺度單位」的話題。在《筭數書》中,我們可以見到作為長度單位的有兩類。其中一種是普通的用法,即「寸」和「尺」這種純粹的長度度量單位。另一種,則是和「土地大小」相關的單位,即「步」、「里」、「畝」和「頃」四種。第一種用法比較單純,和我們今日的習慣差不多,並可確認它是「十分制」,即「十寸為一尺」;而「一尺」之長,雖然各個朝代略有差異,但從新莽和東漢的青銅衡器,能夠確定「一尺」約合今日的「23 公分(centimeter)」到「25公分」,差不多是一個成年人的手掌大小。

至於第二種用法,即「步」、「里」、「畝」這些單位,TG 認為它們原本的計量功能是用在「土地測量」上,或者更進一步地說,是為了政府徵收田租,而用來計算「田地面積」的單位。嚴格說來,以「因次(dimension)」的觀點,「步/里/畝」這組單位的作用是「面積」、或者說是「長度的平方」,與前述的「寸/尺」應該是不同範疇的兩回事。

但我們也可以各類書籍中見到,原本作為「面積單位」的「里」,人們也拿來作為大尺度的「長度單位」之用。然而,我們若要考據「古代的一華里」的今日尺度時,無法像小尺度的「尺」,可以從當代官方製造的標準青銅器來作一客觀的認識。也就是說,雖然我們今天可以準確地知道古人的「一尺」有多長,但用作地理長度的「一里」,則必須從其它的換算敘述來作間接的估算。

目前我們通行的「一里」長度估算,大多不出幾項文獻上的材料。既然古代「尺」的長度可以確知,因此我們就必須找到它與「步/里/畝」的換算。在《史記.秦始皇本紀》中,明確地寫著「始皇推終始五德之傳,以為周得火德,秦代周德,從所不勝。方今水德之始,改年始, 朝賀皆自十月朔。……數以六為紀,符、法冠皆六寸,而輿六尺,六尺為步,乘六馬。」既然漢承秦制,因此大家根據這項記載,算出秦漢的「步」︰

1 步= 6 尺= 6 × 24 公分= 144 公分= 1.44 公尺
在這兒,TG 取「1 尺約當 24 公分」這種「折衷」的數字。

接下來,一般認為先秦時代的「步」和「里」的關係,則來自於《春秋穀梁傳.宣公十五年》和《孫子算經》中「三百步為一里」的敘述。因此我們可以算出「里」︰

1 里= 300 步= 300 × 1.44 公尺= 432 公尺≒ 0.43 公里

雖然各方計算數字略有差異,但大體上,這就是一般人認定「古代的一華里相當於今日的 0.5 公里」的來源。至於把這個數字,套用在古書所載外國地理的問題時,TG 已在前面那篇雜文中提過了,明顯地出現「大到不合理」的麻煩。


我們暫且拋掉前面的數字,直接回歸這部漢初的《筭數書》來看問題。在本書的〈里田〉一篇所載︰「里田術曰︰里乘里,里也。縱廣各一里,……即為田三頃七十五畝。」這一段話的意義非常明顯,就是「(平方)里」和「畝」的換算。用今日的習慣表示法,我們可以轉寫成︰

1 平方里=3 頃 75 畝=375 畝

此外,同樣在《筭數書.啟廣》一篇也寫著︰「田縱三十步,為啟廣幾何為田一畝?曰︰啟八步。術曰︰以卅步為法,以二百四十步為實。」這裡所出現的「法」、「實」二字,可以視為今日的「分母」和「分子」,而「縱」、「廣」則為長方形的「長邊」和「短邊」,「啟」是「計算」之意。所以,這段話給了我們一項資訊︰

1 畝= 240 平方步

結合上面兩條取自於《筭數書》的面積單位關係,我們便可以得到︰

1 平方里=90000 平方步

也就是說,

1 里= 300 步

對照上頭的《孫子算經》,我們確知在秦漢初人們的面積單位轉換上,「一里為三百步」得到了毫無疑問的驗證。下一步,TG 則是要看看「里/步/畝」這些原來作為田地面積的單位,與一般的純粹長度「尺」的轉換關係為何。不過非常遺憾地,TG 翻遍了《筭數書》的各個篇章,裡頭竟沒有關於這方面的敘述,無法獲得更進一步的資訊。

然而,就在 TG 思考這個問題時,猛然想到自己所引的這段話︰「里乘里,里也。」照我們今日對因次的要求,這句話是「不正確」的描述。也就是說,該句前半段的兩個「里」是「長度單位」,最後的「里」則是「面積單位」。如果 TG 想要以最小的字數變更,來修正這句話,則應寫作「里乘里,平方也。」在另一方面,這也似乎反應出當代人們對於「長度」與「面積」兩種單位,有著忽略因次的混同書寫習慣。

《筭數數.稅田》一章寫著︰「稅田廿四步,八步一斗,租三斗。今誤券三斗一升,問幾何步一斗。得曰︰七步卅一分步廿三而一斗。」如果我們看這段話的前半,也就是粟米的稅賦是「八步一斗」,這只能解釋為「8 平方步的田地,要出 1 斗的粟米當作田租」,因此一塊 24 平方步的田地,官員所收的租稅是 3 斗米。只有將這裡的「步」解釋成「平方步」的面積單位,上面的話才有真實操作上的意義可言。否則,只規定出一邊為長度「八步」的田,而未指明它的另一邊、或者提到該田地的形狀,那麼「八步一斗」的稅制不就亂了嗎?附帶一提,本章的計算是要問官員,如果原來該收稅 3 斗,卻多收而成了 3.1 斗,那麼原本是「八步一斗」的稅制,就變成了「7 又 31 分之 23 (平方)步的田,收一斗米」的稅制了。

所以我們再回頭來看「里/步/畝」與「尺」的換算。既然提到「六尺為步」這句話的語境,都是為了描述「田制/稅賦」一事,那麼是否在更嚴格的單位描述上,這句話就應該解釋作「六尺平方,為一步平方之田」,必須要將它視作「面積單位轉換」,而不是傳統上大家認為的純粹的「長度單位轉換」之意。因此順著這條思路,我們的計算應該成︰

6 平方尺= 1 平方步

兩邊開方之後,我們便可以算出︰

1 步=2.45 尺=0.588 公尺
1 里= 300 步≒ 176 公尺=0.18 公里

這裡所得到的結果,是「1 華里為 0.18 公里」,與前述的「1 華里為 0.43 公里」小得非常多了。仿照先前的作法,TG 將一般認定的一華里(0.43 公里)稱作「大尺標」,將自己剛剛自行計算得出的尺度(0.18 公里)稱為「小尺標」。


「一步之遙」有多長?

在前面的計算之中,我們都不約而同地經過了「步」這個長度單位。任何文明在量測上的初始發展,經常取自於人類自身的某些特徵,來當作度量的單位。正如「尺」是取自於人類(應是「成年人」)的手掌之長,所以用作於長度單位的「步」,顧名思義,在一開始一定是定義自「一步之遙」。合理的推測,「1 步」該是一個人在「正常行走的一步距離」。

但如果我們回頭一看上面的計算,「大尺標」的「1 步」換算成今日的公制,是「1.44 公尺」——說實在的,除非古人的平均身高超過了三公尺,否則 TG 絕對不相信有正常的人類,跨出一步的幅距會有比一公尺還大的現象;真要超過一公尺,那應該只能講是「一躍」而不能稱作「一步」了吧?不過,想要為此「抬槓」是絕對辦得到的。比如說,這裡的「一步」是上古某部族信仰神祇的步伐,可能就是取自於「夸父」部族吧!

不過,我們如果直接套用「小尺標」,則「1 步」之長將近於現代公制的「60 公分」,這正符合了 TG 孩童時期和鄰居去打棒球時為壘包間距所作的「步伐量測法」。因此,假如「步」的長度單位正如其名,TG 相信採用「小尺標」的算法,可以讓「一步」得到更簡單、更「名符其實」的解釋。依照 Occam's Razor 原則,TG 絕對擁護「小尺標」的說法。


「千里馬」和「萬里長城」

「千里馬」一名,TG 認為在先秦年間就已經存在,「馬王堆帛書」出土佚籍中的《相馬經》中便已提及,而今天通行版本中的《史記》和《淮南子》也出現過這個詞彙,所以我們有理由測試一下,上頭所提的兩種尺標來加以判斷。

「千里馬」,指的正是「日行千里」的良馬。千里馬跑得有多快?如果我們依據舊有的「大尺標」來看,一匹千里馬一天可跑 430 公里。以 TG 自己所熟知的環境來看,這匹馬一天就可以從「台灣頭」跑到「台灣尾」而綽綽有餘。再以一天跑十個小時來算(白天跑,晚上不跑,再扣掉馬與騎士的休息時間,一天用十個小時來估是合理的),則這匹馬的平均時速是 43 公里,已接近今天馬場上競賽馬匹們急速奔馳的速率了。千里馬果真能用這種速度,在一天之內狂奔十小時,而不致於累倒與斃命,這的確是古人夢寐以求的「天馬」。如果我們想要當個「懷疑論者」,TG 還可以刻薄地說句風涼話,這種「千里良馬」根本就是古人「不切實際」的幻想產物。

但如果我們改採「小尺標」,則一匹千里馬一天跑的距離是 180 公里,換算起來的平均速率是每小時 15 公里,是我們現代印象中馬匹「快步(Trot)」的速度。用這種速度跑個一天,「千里馬」確實是可能存在的。再更進一步地說,除非用在競賽娛樂,否則古人在作為交通工具的「良馬」,不該只著重於牠的速度,而應視牠能夠維持這種雙拍 Trot 奔跑的「耐力」有多強。TG 認為,如果我們相信真有所謂的「千里馬」,那麼採用「小尺標」才是合理的。

此外,TG 不曉得「萬里長城」的「萬里」一詞是什麼時代附加上去的,但可猜測這並不是上古秦漢時期的講法。我們先暫時放下這項源頭的考證,如果我們也嘗試分別使用不同的尺標來換算,「大尺標」之下的「萬里」,就有「4300 公里」之長——這條萬里長城,絕對可以從「山海關」一路延伸到「帕米爾高原」;一看便知,這張牛皮吹得太誇張了。

然而若改採「小尺標」來計算長城之長,則「萬里」約合今日的「1800 公里」。這樣的長度延伸,正好在地圖上應合了我們對中國歷史地圖上的「長城」之長。所以,當過去人們誇下海口而稱呼「萬里長城」時,TG 認為這稱自豪之詞,還是根據一定的事實而發的。


「禹九州」的問題

「禹貢」是傳統中國的一個大問題,TG 是第一回碰觸到。就字面語法而言,TG 十分懷疑這個詞彙不是後來正統漢語的規範說法——眾人一向以來的理解,「禹貢」一詞用今日的講法是「九州各地可以向禹帝進獻的貢物」,即「九州(人民) – 貢獻(給) – 禹」,省略了「主語/九州人民」,並將「謂語/動詞」和「賓語/受詞」給倒置了。省略主詞的漢語構句並不是古文的特例,比如像「荊軻刺秦王」可以簡為「刺秦」。但謂語和賓語的順序,在春秋戰國之後漢語的正常構句,是不能任意變動的。漢語的「禹貢」直接解釋是「禹獻上貢品」而非「(別人)貢獻給禹」。因此如果要照後者來理解,那更像是現代日語的句法哩!然而本文的主旨並不在語言文字方面,現在 TG 只想聊聊「禹九州」的話題。

《史記.五帝本紀》記載,「禹之功為大,披九山,通九澤,決九河,定九州,各以其職來貢,不失厥宜。方五千里,至於荒服。」這一段便是傳統中國所引以自豪的「禹貢九州」。如果我們試著以古代中原為中央,在地圖上用「大尺標」來畫出這「方五千里」的範圍——邊長為 2200 公里的正方形——那麼情況便如下圖所示︰


黃色區塊是「大尺標」之下的禹九州。可見得禹帝的統治範圍含蓋了蒙古、朝鮮,堪稱當時全世界版圖最大的帝國。
至於禹九州的範圍邊界在哪裡……想怎麼畫就怎麼畫,任君選擇。

史冊中所載的「九州」之名為︰冀州、兗州、青州、徐州、揚州、荊州、豫州、梁州、雍州。如果禹帝所統治的這「方五千里」,安排好這九個行政區域,那麼我們便需要作出許多邊境州治範圍的延伸。比如說,青州便必須包括朝鮮半島和遼河東西,梁州則含蓋了青藏高原和越南(交阯),雍州也需延伸至全部的河西走廊和大漠南北。在禹帝統治的年代,中國遠古社會尚無文字、生產力遠較信史為低的年代,禹帝居然能夠有效地統治東亞如此廣大的範圍,真是世界歷史上最偉大的奇觀。這正是帶著強烈「中國本位主義」情緒者,最喜歡引以自豪的「歷史證據」。即使我們認為《禹貢》是晚至戰國時期才寫成的作品,但看來古人應該有著嚴重誇大狂的傾向。

我們將時代觀點放到了信史,便發現了一項矛盾。秦始皇兼併天下之後,廷臣們向這「千古一帝」的進言為︰「昔者五帝地方千里,其外侯服夷服諸侯或朝或否,天子不能制。今陛下興義兵,誅殘賊,平定天下,海內為群縣,法令由一統,自上古來未嘗有,五帝所不及。」究竟是「方五千里」或「方千里」,TG 認為五帝疆域應解作「方五千里」,而當中的「方千里」是「王畿直屬之地」。我們今天大體都曉得秦帝國所統治的地域,北不及塞外、南僅達廣東、西不至河西走廊、四川盆地則是新附不久。比照上面的地圖,秦人哪裡比得遠古時代禹帝爺的功蹟,而始皇帝和群臣有何值得驕傲的呢?最簡單與廉價的處理方式就是「誅心」——從道德層面著手。由於秦始皇「好大喜功」(這幾乎已經成為描寫「暴君」的萬用套語了……),喜歡接受奉承,於是廷臣們也順著胡說八道一番,不求精確了。

但是,如果我們認為戰國文人與漢代的司馬遷,在某種程度上對於「地理」層面的描寫,溢美之詞有之,但基本上還是以「認真」的態度來處理。若把〈五帝本紀〉上頭大禹的疆域「方五千里」,利用「小尺標」加以重新計算,得出「邊長接近今日一千公里的正方形面積」。重新在地圖上安置這個方框,情況應如下方左圖所示︰

用小尺標的修正之後,禹的統治範圍明顯地縮小許多。
文獻上諸多「禹九州」的山川之名,便完全落於這個範圍之內。

以灰色區塊代表後人確定的秦朝版圖,並與「小尺標」的禹九州重疊。

經過 TG 的尺標修正之下,緊張之情便舒緩許多了。五帝和大禹所能掌控的範圍,差不多是整個古中國的「大中原/黃淮平原」,再加上長流中下游的荊楚一帶——這完全符合了西周至春秋戰國時代人們所認定的「古中國文化圈」的地理位置。特別是,「九州」之名與其記載的山川,都可以安置在這片「邊長一千公里」的範圍之內。在心理上,我們再也不用為了配合前述的廣大地域,而毫無顧忌地擴張「禹九州」的青州、揚州、梁州和雍州。再如上方右圖所示,把大體確知的秦朝的江山版圖,與遠古中國所謂的夏朝疆域重疊,嬴政先生在這方面,的確有資格囂張地到處刻石頌功的。——當然,TG 硬把「禹九州」和「秦版圖」加以重疊比較,一定要抽離價值判斷的情緒;時代環境不同,生產能力、知識累積、科學工藝當然也完全不同。其實誰也沒有比較厲害……

所以我們可以明顯地看出,禹的勢力自然不到今日的四川盆地(所以後來才要新增一個地名——「益州」),也不到今日的浙江和福建(因此漢武帝年間才需要處理「東甌」、「閩越」兩個獨立王國的紛爭。秦代的「閩中郡」,說穿了也不過是「一國兩制」之下的妥協產物……)。因此我們回過頭來,以一種比較健康的心態來看《禹貢》一書的著作時代與其敘述內容,發現那應該是周朝之後,乃至於秦漢時期的中國文人,以他們所認識的「天下」為本,在整理過去的地理資訊時,回推與追溯,將前人的開墾之功,套入了單一古代聖王的身上。只要用「小尺標」來修正地理位置,我們將會發現,真正的歷史誇大狂,反倒是今天我們所搞來出的「大尺標」了。


【附註】

1. 對照 TG 在前一篇雜文中所提到的倭國、扶桑等海外諸國的例子,本文所採的「小尺標」(1 華里為 0.18 公里),與那篇文章中的「0.075 公里」有顯著的差距;不過 TG 還是能夠「自圓其說」的。由於 TG 在前文中所估算的距離,特別是朝鮮半島橫向距離以及《魏志.倭人傳》所描述的方位移動,都是直接拿著現代的空照地圖來推估的。公元紀元前後的古人,當然不可能按 TG 的方式來估算距離,他們絕大多數是用親身實際「走」出來、或渡船所「划」出來的。正因為大地不可能永遠是平坦的、大海也不能能沒有波浪,兩點之間的旅程不可能會是一條幾何學上的直線,所以「路徑長」一定比「兩點的直線距離」來得大——在衛星時代來臨之前,繪圖這門學科的評量點之一,就是要盡可能地彌補這兩方的差距。所以前文會估出更小的尺標數值,正是古代人們在實際操作之下所出現的結果。今天 TG 認為,定出「1 華里為 0.18 公里」,應比兩年前自己的那篇文章中的結果,更符合古代的人們認知。

2. 關於度量衡的標準,由於古今的思維與要求不同,以致於目前缺少「決定性的證據」,來描述這種地理尺標的長度究竟有多長。在本文中所使用的「里」和「步」的單位換算,都是取自於這部《筭數書》裡頭的第一手情報。唯一的一項「假設」,就是將其它流傳文獻中的「六尺為步」,解讀成「六平方尺為一平方步」。

3. TG 讀到現代人的研究材料中,發現許多作者都不約而同地提到,文獻記載中的「里」對應到真實的地理關係時都「太長」了;證明一般人所用的尺標都估得太大了。所以無論真實情況為何,TG 可以十分肯定地說,常見所謂「一華里約合今日的 0.5 公里」這項轉換關係,一定是錯的。

4. 重新修正長度之後,TG 覺得上古時代的中國人對地理的觀念,絕對不像很多現代人所污衊的「一筆胡塗帳」。問題可能在於正史與各種典籍的記錄者,對於「算學」方面的傳承,一直都不是廟堂之上的重點研究,也不構成一門獨立的學問。因此除了道德和哲學主題之外,一般的知識份子長期以來便輕視這一專業。在西風東漸,近代中國人逐漸接受了由外國人所主導的「公制」標準之後,中國的天文、地理、數學的傳承立時斷裂。我們現代人重新拾起這方面的主題時,缺乏了師徒的傳承,閉門造車地埋入故紙堆中,得到了完全不自知的錯誤結論。這項錯誤結論,由於迎合了當時與現代人們批判傳統中國的風潮,於是便這麼樣地流傳開來。


(發表於2009.8.11)


回雜文目錄