杨继承
北京师范大学珠海校区文理学院
周家台秦简《二十八宿占》是一种早期式占文献。(1)按,整理者将这一式占文献置于《日书》部分,并将其内容概括为“二十八宿占”。同时,整理者亦指出,由于本篇“求斗术”最后的“系行”二字上有墨点“·”,表明这是简131—244一段简文的标题,故有学者将此篇径题作《系行》。此外,彭锦华、刘国盛则将此篇称作“周家台秦墓出土线图”,本文则仍依照习惯,称作“二十八宿占”。参见湖北省荆州市周梁玉桥遗址博物馆编: 《关沮秦汉墓简牍》,北京: 中华书局,2001年,第105页;武汉大学简帛研究中心、荆州博物馆编,陈伟主编: 《秦简牍合集〔三〕》,武汉: 武汉大学出版社,2014年,第20页;黄儒宣: 《〈日书〉图像研究》,上海: 中西书局,2013年,第47页;彭锦华、刘国胜: 《沙市周家台秦墓出土线图初探》,《简帛研究 二〇〇一》,桂林: 广西师范大学出版社,2011年,第241—250页。这一式占文献可分为三个部分: 第一部分是“图表与说明”,包括月星关系表、干支表以及线图;第二部分为“占辞”,备列斗乘二十八宿时诸占测事项之吉凶;第三部分为“占卜方法”,即所谓“求斗术”。《二十八宿占》的使用方法则需要基于式图,并运用求斗术所示之操作方法,以求得相应的“时称”“星宿”,即所谓“斗乘”;然后再根据斗乘二十八宿之占辞,以占断各项人事吉凶。尽管这一式占文献保存得较为完整,学界也进行了一些尝试性研究,(2)彭锦华、刘国胜: 《沙市周家台秦墓出土线图初探》,《简帛研究 二〇〇一》,第241—250页;陶磊: 《〈淮南子·天文〉研究: 从数术史的角度》,济南: 齐鲁书社,2003年,第46—52页;黄儒宣: 《式图与式盘》,《考古》2015年第1期;冉井中: 《大六壬的古天文学原理及哲学意义研究》,博士学位论文,中国社会科学院,2018年,第77—80页。但对于《二十八宿占》的具体操作方法,特别是求斗术的认识,仍旧有着较多的疑问,相关解决方案也都存在各自的问题。本文将在早期式占研究的基础上,利用与式占关系紧密的传世与出土文献,从“式法”与“直日”的角度对《二十八宿占》进行尝试性研究,以增进我们对这一早期式占文献的认识。
周家台秦简《二十八宿占》的第一部分为“月星关系表”:
八月 角,亢。 二月 奎,娄。
十月 心,尾,箕。 四月 毕,此(觜)觿(巂),参。
十一月 斗,牵=(牵牛)。 五月 东井,舆鬼。
十二月 婺=(婺女),虚,危。 六月 柳,七星。
正月 营=(营室),东辟(壁)。 七月 张,翼,轸。(3)湖北省荆州市周梁玉桥遗址博物馆编: 《关沮秦汉墓简牍》,第104—105页。
这一月星关系常见于战国秦汉之际的《日书》。大抵而言,《日书》所见月星关系可以分为两类: 一类以九店楚简《日书》、睡虎地秦简《日书》甲种《除》《玄戈》为代表,每月对应一个星宿;一类以睡虎地秦简《日书》乙种《官》、孔家坡汉简《日书·星官》为代表,每月对应二至三宿。周家台秦简《二十八宿占》即属后者。
表1 《日书》所见月星关系表
由表1可知,取第二类月星关系的首宿,即可以得到第一类月星关系(惟有九店楚简《日书》九月取房宿例外)。而这种月星关系,有许多学者已经指出,与传世文献所载“日躔星宿”记录十分接近。(4)参见王胜利: 《〈云梦秦简日书初探〉商榷》,《江汉论坛》1987年第11期;王维坤: 《睡虎地秦简〈日书·玄戈〉再析》,西北大学秦汉史研究室主编: 《陈直先生纪念文集》,西安: 西北大学出版社,1992年,第111—127页;王胜利: 《睡虎地〈日书〉“除”篇、“官”篇月星关系考》,《中国历史文物》2004年第5期。《吕氏春秋》“十二纪”载有十二月“日在某宿”,如“孟春之月,日在营室”,高诱注曰:“营室,北方宿,卫之分野。是月,日躔此宿。”(5)许维遹: 《吕氏春秋集释》,北京: 中华书局,2009年,第5页。故而“日躔”又可以称作“日在某宿”。《吕氏春秋》“十二纪”的月星对应关系如下:
孟春,营室;仲春,奎;季春,胃;孟夏,毕;仲夏,东井;季夏,柳;孟秋,翼;仲秋,角;季秋,房;孟冬,尾;仲冬,斗;季冬,婺女。
《礼记·月令》承袭自《吕氏春秋》“十二纪”,故月星关系与此相同。在这一“日躔”系统中,孟秋(七月)为翼、季秋(九月)为房、孟冬(十月)为尾,与睡虎地秦简《除》《玄戈》相应的张、氐、心不同。在《淮南子·天文》篇中,则载有另外一种“日躔”:
星正月建营室,二月建奎、娄,三月建胃,四月建毕,五月建东井,六月建张,七月建翼,八月建亢,九月建房,十月建尾,十一月建牵牛,十二月建虚。(6)何宁: 《淮南子集释》,北京: 中华书局,1998年,第271页。
所谓“建某某”,钱塘以为“皆谓日所在星也”,(7)钱塘: 《淮南子天文训补注》卷下,清道光十八年刻本,第63页。即“日躔”。这份日躔星宿的七月、八月、九月、十月、十一月、十二月分别为翼、亢、房、尾、牵牛、虚,而睡虎地秦简《除》《玄戈》所对应的星宿则为张、角、氐、心、斗、女。更为不同的是,《天文》篇的二月列了奎、娄二宿,这与第二类月星关系的排列方式一样。对于《天文》篇“二月建奎、娄”这一迥异于其余十一月的书写方式,王引之认为是由于文本讹误造成的,对此他有极为精彩的论述:
“二月建奎、娄”,备举是月日所在之星也。由此推之,则正月当云“建营室、东壁”,三月当云建“胃、昴”,四月当云“建毕、觜巂、参”,五月当云“建东井、舆鬼”,六月当云“建柳、七星、张”,七月当云建“翼、轸”,八月当云“建角、亢、氐”,九月当云“建房、心”,十月当云“建尾、箕”,十一月当云“建斗、牵牛”,十二月当云“建须女、虚、危”。盖《月令》日在某星,但举一月之首言之。而此则举其全也。后人妄加删节,每月但存一星之名,独“二月建奎、娄”尚仍其旧,学者可以考见原文矣。不然,岂有《月令》季夏日在柳,而此言建张,仲秋日在角,而此言建亢,仲冬日在斗,而此言建牵牛,季冬日在婺女,而此言建虚者乎?(8)王念孙撰,徐炜君等校点: 《读书杂志》,上海: 上海古籍出版社,2014年,第2057页。
王引之的论述确立了古代月星关系的两个原则: 其一,《礼记·月令》所载“日在某星”是“但举一月之首”言之,即单列一宿的月星关系,此宿为当月之“首宿”;其二,《淮南子·天文》“二月建奎、娄”,乃是“备举是月日所在星”,即排列当月太阳所经过的所有星宿。基于这两点原则,王引之采用《吕氏春秋》“十二纪”、《礼记·月令》的“日在星宿”作为首宿,备举日所在的二至三宿,从而还原了《淮南子·天文》的月星系统。而在《日书》系统中,如上所论,除九店楚简《日书》九月所宿星为“房”之外,第二类月星关系的首宿其实就是第一类月星关系。因此,《日书》中的月星关系,确实来自一种日躔系统,只是与《礼记·月令》《淮南子·天文》所载稍有差异。对于这种差异,有学者以为“这大概是由于地域差别的缘故”,(9)成家彻郎撰,王维坤译: 《睡虎地秦简〈日书·玄戈〉》,《文博》1991年第3期,第65页。也有学者认为《日书》与《吕氏春秋》运用了不同的二十八宿体系,(10)王胜利: 《睡虎地〈日书〉“除”篇、“官”篇月星关系考》,《中国历史文物》2004年第5期,第50—51页。但更多的学者认为是由“岁差”导致的,(11)王维坤: 《睡虎地秦简〈日书·玄戈〉再析》,西北大学秦汉史研究室主编: 《陈直先生纪念文集》,第124页。即不同的日躔系统使用了不同时代的二十八宿距度。
既然我们已经确定了《二十八宿占》的月星关系表是一种日躔记录,那么其在《二十八宿占》中的功用是什么呢?与《日书》中的几种月星关系表的用途尚存在争议形成对比的是,作为式占文献的放马滩秦简式占古佚书《钟律式占》(12)按,放马滩秦简乙种《日书》中与式占有关的简文,可以组成一个自成系统、可独立成篇的式占文献,程少轩命名为《钟律式占》。具体复原情况参见程少轩: 《放马滩简所见式占古佚书的初步研究》,《“中研院”历史语言研究所集刊》第83本第2分,2012年。与西汉汝阴侯墓所出六壬式盘中的月星关系,可以确定是运用于式图或式盘之上的。比如,放马滩秦简所载每月日躔二十八宿之距度曰:
角十二,[八月],亢十二;氐十七,九月,房七;心十、十二,十月,尾九,箕十;斗廿三、廿二,[十一]月,[牵牛……;婺女……,十二月],虚十四,危九;营室廿,正月,东壁十三;十五,二月,娄十三;胃十四、十三,三月,[昴十]五;毕十五,四月,此(觜)六,参九;东[井廿九],[五月,舆鬼……];□□,六月,七星十三;张□□,七月,翼十三,轸十五。(13)孙占宇: 《放马滩秦简日书“星度”篇初探》,《考古》2011年第4期,第74页;孙占宇: 《天水放马滩秦简集释》,兰州: 甘肃文化出版社,2013年,第202页。
经孙占宇、黄儒宣、程少轩等学者研究,这一星度系统与《汉书·律历志》等传世文献差异较大,但与《开元占经》引《洪范传》、汝阴侯二十八宿圆盘所载的古度更为接近,应当是一种较为古老的距度系统。(14)参见孙占宇: 《放马滩秦简日书“星度”篇初探》,《考古》2011年第4期,第74—75页;黄儒宣: 《〈日书〉图像研究》,第31—35页;程少轩: 《放马滩简〈星度〉新研》,《自然科学史研究》2014年第1期,第25—33页。当然,这些古度系统本身也有一定的差异,如汝阴侯二十八宿圆盘与《洪范传》虽属于同一距度系统,但也有一定的差异,参见宋会群、苗雪兰: 《论二十八宿古距度在先秦时期的应用及其意义》,《自然科学史研究》1995年第2期,第142页。而其月星关系,则与周家台秦简《二十八宿占》完全一致,足见《二十八宿占》的月星关系,正是出自这样一种二十八宿古距度系统。
这样的月星关系,又见于西汉汝阴侯墓出土的六壬式盘(图1):(15)式图摹本取自殷涤非: 《西汉汝阴侯墓出土的占盘与天文仪器》,《考古》1978年第5期,第340页。
图1 汝阴侯墓出土六壬式盘
图2 周家台秦简《二十八宿占》式图
八,角、亢;九,氐、方;十,心、尾、箕;十一,斗、牛;十二,女、虚、危;正,宫、壁;二,奎、娄;三,胃、昴;四,毕、觜、参;五,井、鬼;六,柳、星;七,长、羽、。
可见,周家台秦简《二十八宿占》与汝阴侯墓六壬式盘的月星关系是一致的。尤其值得注意的是,汝阴侯汉墓所出六壬式盘斗柄指向“八”,即所谓“八月月将”“天罡”。(16)参见严敦杰: 《关于西汉初期的式盘和占盘》,《考古》1978年第5期,第334页;严敦杰: 《式盘综述》,《考古学报》1985年第4期,第451页。周家台秦简的整理者亦曾注意到“简文排列以八月为起始,这正与‘八月将天罡’相一致”。(17)湖北省荆州市周梁玉桥遗址博物馆编: 《关沮秦汉墓简牍》,第105页。有学者指出,“周家台《日书》之所以要以八月为起首月,除了因为与八月相配的第一个星宿——角宿是‘东方苍龙’七宿之首宿以外,大概也不会有其他原因”,则显然没有意识到这一月星关系是出于式占这一性质。参见王胜利: 《睡虎地〈日书〉“除”篇、“官”篇月星关系考》,《中国历史文物》2004年第5期,第54页。由此可见,《二十八宿占》的月星关系在一定程度上是与六壬式的天盘布局相一致的,只是《二十八宿占》并没有将其画在式图上而已。
《二十八宿占》式图则展现了更多的式占信息(图2)。据整理者描述,《二十八宿占》的式图由两个大小不同的同心圆构成。大圆又可以分为内、中、外三圈。最外圈在上、下、左、右四个方位写有木、金、水、火,并与大圆外的东、西、北、南相对应。中圈则分列二十八宿,正东方为房,然后按照心、尾、箕……氐、房的顺序逆时针排列。内圈则为按照顺时针排列的二十八时称,与中圈的二十八宿形成固定搭配。整理者将夜半作为一日之始,将二十八时顺序排列如下: 夜半、夜过半、鸡未鸣、前鸣、鸡后鸣、毚旦、平旦、日出、日出时、蚤食、食时、晏时、廷食、日未中、日中、日过中,日失(昳)、餔时、下餔、夕时、日毚入、日入、黄昏、定昏、夕食、人郑(定)、夜三分之一、夜未半。(18)湖北省荆州市周梁玉桥遗址博物馆编: 《关沮秦汉墓简牍》,第108—109页。这种将一日分为二十八时的做法,显然是为了与二十八宿相配,并不是实际行用的纪时制度。目前所见式占文献中,唯有放马滩秦简《钟律式占》载有二十八时称,但略有残缺。(19)相关复原可参见程少轩: 《放马滩秦简式占古佚书研究》,上海: 中西书局,2018年,第39—53页。此外,悬泉置遗址曾出土过一枚写有三十二时称的木牍,(20)郝树声、张德芳: 《悬泉汉简研究》,兰州: 甘肃文化出版社,2008年,图版第71页、释文第69页。则又超出了二十八这一数目。值得注意的是,这两种纪时系统都以“平旦”作为第一个时称。(21)肩水金关汉简73EJT23∶972残存十个时称,亦以平旦为首,参见甘肃简牍保护中心等编: 《肩水金关汉简(贰)》,上海: 中西书局,2012年,下册,第126页。《二十八宿占》也应该以“平旦”为始,后文“求斗术”中便有“此正月平旦系申者”的占测术语。
式图中间的小圆是一幅典型的“日廷图”。简135贰—136贰曾列有“辰、乙、卯、甲、寅、丑、癸、子、壬、亥、戌、辛、酉、庚、申、未、丁、午、丙、巳”的干支表,整理者已经指出,该表与式图中心部位的二十个干支排列顺序相同,式图这二十个干支是以东方地支“辰”为起点,逆时针方向旋转布列的。(22)湖北省荆州市周梁玉桥遗址博物馆编: 《关沮秦汉墓简牍》,第106—107页。实际上,这二十个干支又可以分为两层: 内层为天干,按照甲、乙、丙、丁、庚、辛、壬、癸顺序排列,戊、己则位于正中;外层为十二地支,依照子、丑、寅、卯、辰、巳、午、未、申、酉、戌、亥的顺序排列。很明显,这里的干支排列方法,正是后世六壬式盘中的“十干寄宫”。
从《二十八宿占》式图来看,这一式占尚未有明显的天盘、地盘之分,也不曾书写十二月将等神名。尽管最后要“求斗乘”之所在,但式盘上却也没有画出北斗。因此,陶磊将这一式图看作是“早期式盘向后世式盘演变的过渡形态”。(23)陶磊: 《〈淮南子·天文〉研究: 从数术史的角度》,第52页。而这样一种过渡形态,又可以在江苏仪征刘集联营西汉墓出土占卜漆盘(图3)、马王堆帛书《阴阳五行》甲篇《堪舆》式图(图4)、北大汉简《揕舆》“大罗图”(图5)中见到:(24)参见仪征博物馆: 《江苏仪征刘集联营西汉墓出土占卜漆盘》,《东南文化》2007年第6期;湖南省博物馆、复旦大学出土文献与古文字研究中心编纂,裘锡圭主编: 《长沙马王堆汉墓简帛集成(伍)》,北京: 中华书局,2014年,第93页;北京大学出土文献研究所编: 《北京大学藏西汉竹书》,上海: 上海古籍出版社,2014年,第140页。
图3 江苏仪征刘集联营西汉墓出土占卜漆盘
图4 马王堆帛书《阴阳五行》甲篇《堪舆》式图(程少轩复原)
图5 北大汉简《揕舆》“大罗图”
通过对比这些式图或式盘可知,除了干支顺序不同、月序或有或无、形制或圆或方,这些式盘或式图的布局基本上是一致的,特别是二十八宿的配置更是基本相同。北大汉简《揕舆》、马王堆帛书《阴阳五行》甲篇《堪舆》式图都是古堪舆术文献,(25)参见陈侃理: 《北大汉简所见的古堪舆术》,北京大学出土文献研究所编: 《北京大学藏西汉竹书》,第225—236页。则“大罗图”与《堪舆图》便是古堪舆术这一式占用于运式的工具。由此可知,周家台秦简《二十八宿占》很有可能是一种与古堪舆术接近的式占。
北大汉简《揕舆》篇“大罗图”旁记载了一段自题为“朔星”的文字。所谓“朔星”,与出土《日书》、式盘以及《二十八宿占》的月星关系有着极大的相似性。这对于我们理解“大罗图”乃至于周家台秦简《二十八宿占》的用法,无疑具有启发作用。“朔星”章曰:
朔星: 正月营室,二月奎,三月胃,四月觜觿,五月东井,六月酉(柳),七月翼,八月角,九月氐,十月尾,十一月斗,十二月婺女。(26)北京大学出土文献研究所编: 《北京大学藏西汉竹书》,第139页。
整理者指出,“朔星”,指每月朔日,月所在的星宿,并引《黄帝龙首经》卷上“占月宿何星法”为证。马克早就注意到,《黄帝龙首经》反映了六朝及唐代六壬式盘的原理,而“占月宿何星”的方法,完全可以追溯到汉代的式占与数术传统,这包括六壬式盘实物与《日书》中的月星关系。(27)Marc Kalinowski,“The Use of the Twenty-eight Xiu as a Day-Count in Early China,” Chinese Science, no.13 (1996),pp.69-70.根据“占月宿何星法”可知,在较晚的式占文献中,“朔星”是如何依据式盘推演出来的。其文曰:
常以月将加卯为地上乙所得星,右行如今日数止,即月宿星也。(正月一日宿在室,二日在壁,三日在奎,四日在娄,以次逆行,空月尽日,月宿在壁;二月一日月宿在奎,至月尽日,月宿在娄;三月一日宿在胃;四月一日在毕;五月一日在井;六月一日在柳;七月一日在张;八月一日在角;九月一日在氐;十月一日在心;十一月一日在斗;十二月一日在女。若闰月,朔宿后一宿是也。假令正月闰壁是也。)
假令二月五日,以魁临卯,乙上见奎星,当唱言“奎一娄二胃三昴四毕五”,则为月宿星日在毕也。十二月皆持月将临卯,取乙上神所得星,右行数,唯正月独卯上星数右行,不从乙也。假令正月三日登明临卯,卯上见营室,数右行营室一东壁二奎三为月宿星得奎也。他准此。(28)《黄帝龙首经》卷上《占月宿何星法》,《道藏》第4册,北京、上海、天津: 文物出版社、上海古籍出版社、天津古籍出版社,1988年,第986页。
卢央曾推测:“这一推二十八宿星的方法可能依赖于式盘,即同时操作式盘和操作者对于星空的知识而作出推断。”(29)卢央: 《中国古代星占学》,北京: 中国科学技术出版社,2013年,第519页。实际上,这段文字已经详细地介绍了如何依据式盘来推算“月宿何星”。“常以月将加卯为地上乙所得星,右行如今日数止,即月宿星也”是推算规则;“假令二月五日”一段,则是以“二月五日”为例作的具体推演。所谓“月将”即“十二月将”,六壬家称之为“十二神”,与十二地支形成固定搭配。“月将加卯”即“月将加时”,将式盘斗柄指向“卯”(即“以魁临卯”),从而得到一个天盘、地盘的图式。此时,地盘十干之“乙”对应的“星”(二十八宿),即本月朔日月所宿之星。以二月为例,此时“乙上见奎星”,则二月朔日为“奎”。而要得到“今日”月之所宿,则需要“右行如今日数”,即按照二十八宿之顺序顺行数至当日。如二月五日,即从朔日奎宿开始,按照“奎一娄二胃三昴四毕五”的顺序数,则该日月宿星为毕。后文又有“十二月皆持月将临卯,取乙上神所得星,右行数”予以总结。不过,这一“占月宿何星法”仍有一定的特例: 其一,正月不取乙上神所得星,而取卯上神所得星;其二,若遇闰月,则以“朔宿后一宿”为“朔宿”。
我们发现,依照《黄帝龙首经》“占月宿何星法”排出的月朔与《二十八宿占》月星关系之“首宿”一致,也与根据“朔宿法”(30)按,关于古代中国的星宿纪日法,除了本文所讨论的“朔宿法”外,尚有汉译佛经中所载的二十八宿纪日法(又称“望朔法”)以及南宋以来官方历书中的二十八宿纪日(又称“七元甲子法”)关于这三种纪日法的分类,可参见Marc Kalinowski,“The Use of the Twenty-eight Xiu as a Day-Count in Early China,” Chinese Science, no.13 (1996), pp.55-81;孔庆典、江晓原: 《11—14世纪回鹘人的二十八宿纪日》,《西域研究》2009年第3期,第10—14页。关于历书系统的二十八宿纪日法,可参见邓文宽: 《传统历书以二十八宿注历的连续性》,《历史研究》2000年第6期。关于汉译佛经中的二十八宿纪日法,可参见李辉: 《〈大方等大集经〉中的“二十八宿直日术”复原》,《自然科学史研究》2015年第3期。规则排列的“二十八宿直日”每月首宿完全相同。以往关于“二十八宿直日”的研究,主要是根据《日书》中有关“二十八宿”的材料推定而来。(31)张闻玉: 《云梦秦简〈日书〉初探》,《江汉论坛》1987年第4期;成家彻郎: 《睡虎地秦简〈日书·玄戈〉》,王维坤译,《文博》1991年第3期;尚民杰: 《云梦〈日书〉星宿记日探讨》,《文博》1998年第2期;Marc Kalinowski,“The Use of the Twenty-eight Xiu as a Day-Count in Early China,” Chinese Science, no.13 (1996), pp.69-78;工藤元男: 《睡虎地秦简所见秦代国家与社会》,广濑薰雄、曹峰译,上海: 上海古籍出版社,2010年,第122—129页;孔庆典: 《10世纪前中国纪历文化源流: 以简帛为中心》,上海: 上海人民出版社,2011年,第118—127页。北大汉简《雨书》的公布,第一次完整地展现了依据“朔宿法”原理的“二十八宿直日法”。
在《雨书》的《雨》篇中,每章开篇都以“朔某某”的形式列出从正月至十二月朔日所值星宿: 营室、奎、胃、毕、东井、柳、张、角、【氐】、心、斗、婺女。这就是每月之“朔宿”。(32)按,在九店楚简《日书》中,已经存在“朔于某星”的写法,即某月的朔日为某星宿。参见刘乐贤: 《简帛数术文献探论(增订版)》,北京: 中国人民大学出版社,2012年,第59页。另外,所有“当雨之日”亦注明当日所值星宿,如:
正月朔营室,雨。不雨,萅(春)肃。三日奎,雨。不雨,电,乃种作,春乃多寒,夏有覆。七日毕,小雨。九日参,小雨。十日东井,雨。不雨,倍矞见,国有舌夭。旬三日七星,小雨。旬七日角,雨。不雨,至七日乃风,春有(雪)……(33)北京大学出土文献研究所编: 《北京大学藏西汉竹书》,第79页。
由于规定了每月朔日所值星宿,且已知每月“当雨之日”所值星宿,故可归纳出这样一种“二十八宿直日法”: 正月至十二月朔日所值星宿依次为营室、奎、胃、毕、东井、柳、张、角、氐、心、斗、婺女,初二及之后的星宿,则按照东方苍龙七宿(角亢氐房心尾箕)、北方玄武七宿(斗牛女虚危室壁)、西方白虎七宿(奎娄胃昴毕觜参)、南方朱雀七宿(井鬼柳星张翼轸)的顺序依次排列,至二十九日则开始重复朔日星宿。(34)《雨》篇五月、八月的“二旬九日”,分别重复了朔日的东井、角,即可说明。且据陈苏镇介绍,北大汉简《日书》所用纪日有三旬、三旬一日,可以证明《日书》中的纪日法有三十一日,参见陈苏镇: 《北大汉简中的〈雨书〉》,《文物》2011年第6期,第85页。其特点在于,为了确保二十八宿在全年不间断排列,四月、七月、十月、十二月4个月份为31日,其余月份则为30日,一年共364日。
尤值得注意的是,这种“二十八宿直日法”,应当也是通过式法推演而来的。《雨》篇的结尾有这样一段文字:“轸、角得辰、巳,东辟(壁)、奎得戌、亥,为子母,子母相得为大阴,为雨,生虫。”(35)北京大学出土文献研究所编: 《北京大学藏西汉竹书》,第82页。按,标点参考高一致: 《北大汉简〈雨书〉初读》,简帛网,2015年11月24日。在《雨书》中,轸、角与辰、巳,东壁、奎与戌、亥有着对应关系,而这种对应关系即来自式占。子居征引《素问》《遁甲》等文献论证道:
《玉照定真经》:“戌亥为天门,为天医;辰巳为地户,为地医。”《赤松子章历》卷四:“戌亥绝阳之乡为天罗,辰巳绝阴之地为地网。”《素问·五运行大论》:“所谓戊己分者,奎壁角轸,则天地之门户也。”王冰注引《遁甲》:“六戊为天门,六巳为地户。天门在戌亥之间,奎壁之分;地户在辰巳之间,角轸之分。……角属辰,轸属巳。”当都是据式盘为说,角得辰、轸得巳、奎得戌、壁得亥,为“子母相得”。《史记·律书》:“十母,十二子,钟律调自上古。建律运历造日度,可据而度也。”是以天干为母,地支为子。《雨书》中则似是以天干为父,地支为母,二十八宿为子,因此有“轸、角得辰巳,东壁、奎得戌亥,为子母”之说。(36)子居: 《北大简〈雨书〉解析》,中国先秦史网站,2016年1月8日。按相关材料集中出现在《梦溪笔谈》中,参见沈括: 《补笔谈》卷二,沈括撰,金良年点校: 《梦溪笔谈》,北京: 中华书局,2015年,第288页。
从北大汉简《揕舆》“大罗图”、江苏仪征刘集联营西汉墓出土占卜漆盘、马王堆帛书《阴阳五行》甲篇《堪舆图》等式图或式盘来看,轸、角在东南维,东壁、奎在西北维。在后世式盘中,东南为地户,西北为天门,可见《雨书》中隐藏着一种相似的式图。而且,在《大六壬断案》等后世六壬式占文献中,即有“凡占雨,但用月宿到今日”(37)邵彦和著,刘科乐疏正: 《大六壬断案疏正》卷一,北京: 华龄出版社,2012年,第10页。之语,所谓“月宿”,即“月宿何星”。由此可见,《雨书》在某种程度上应该也是式占文献。这一式占文献以“占雨”为专题,其占测则是基于与《黄帝龙首经》“占月宿何星法”排列规则一样的“二十八宿直日”。这种一致性可以让我们做出这样一种推测: 所谓“朔星”,其实就是按照式法推演的月所在朔日星宿。(38)当然,依照式法的不同,这种“朔星”也会存在一定的差异。比如北大简《揕舆》中的“朔星”属于古堪舆术,就与《黄帝龙首经》稍有差异。而同样属于六壬式占,晚于《黄帝龙首经》的一些式占文献也保存着略有差异的朔星系统。参见徐道符: 《大六壬心镜》卷三,清嘉庆年间程树勋抄本;《六壬大全》卷七,《景印文渊阁四库全书》第808册,台北: 商务印书馆,1987年,第667页。那么,与《揕舆》等有着同样式图与月星关系的《二十八宿占》,又是否也有着这样一套“二十八宿直日法”?顺着以上思路,我们试图对求斗术做一种尝试性的破解。
《二十八宿占》简243—244记载了一段简短的“求斗术”:
求斗术曰: 以廷子为平旦左行,数东方平旦以杂之,得其时宿,即斗所乘也。
此正月平旦系申者,此直引也。今此十二月子日皆为平,宿右行。·系行。(39)湖北省荆州市周梁玉桥遗址博物馆编: 《关沮秦汉墓简牍》,第117页。
彭锦华、刘国胜解释了其中一些关键字词,如将“廷子”的“廷”读为“停”,“廷子”即是以“线图”干支坐标的子位作为转动的初始位置;“左行”则是左周而行,犹今顺时针转动;“杂”则为错合之义。他们认为:“这条简文大概的意思似可解释为: 从‘子’位以‘平旦’时称开始,按顺时针方向依28栏的顺序数时称,至‘平旦,心’这一栏止,这样就在‘平旦,心’这一栏的干支位上推得了另一栏时宿,即‘廷食,翼’,‘翼’就是所占求的斗柄所指星宿。问题在于‘翼’是何时所值星宿,我们尚不能明确。有可能是指简文1中的‘十二月子日’。再依‘干支坐标’的顺序推出十二月中其余干支所值星宿。”(40)彭锦华、刘国胜: 《沙市周家台秦墓出土线图初探》,《简帛研究 二〇〇一》,第245页。按照这一方法,子位在线图上本来对应的是“夜半、虚”一栏,夜半顺时针数,历经六个时辰到达平旦;相应地,本来的平旦也需要经历六个时辰到达廷食,对应星宿则为翼。若将翼宿视作十二月子日所值星宿,再按照干支依次排列,则这一具有普遍功能的“求斗术”便固定成一个结果了。这不仅使得这一式法简单化,也无法解释后文的“正月平旦系申”等文字。
黄儒宣就这段文字作了新的解释,并提出了另外一种求斗乘的方案。她认为,“廷子”的“廷”当指线图中央的日廷图,“子”则代指地支;“杂”当读为“匝”。因此,这段“求斗术”是说“以日廷图的地支为平旦,左行顺时针方向运转,数到东方平旦以循环一周,得出的时称、星宿,即是北斗所乘。联系后文‘此正月平旦击申者’,可知是从正月平旦击申开始,依序为二月平旦击酉,三月平旦击戌,四月平旦击亥,五月平旦击子,六月平旦击丑,七月平旦击寅,八月平旦击卯,九月平旦击辰,十月平旦击巳,十一月平旦击午,十二月平旦击未”,从而复原了每月平旦所击地支。至于每日的运行规律,黄儒宣注意到了《二十八宿占》图表部分的干支表A: 辰、乙、卯、甲、寅、丑、癸、子、壬、亥、戌、辛、酉、庚、申、未、丁、午、丙、巳。由于这里只有二十个干支,无法与二十八宿相配。黄氏认为,由于式图中央为戊、己,“戊、己属土,土寄四维”,因此“将寄在四维的‘戊、己’排入每日运行序列,便能与二十八时称、星宿相配。根据简文‘宿右行’的规定,绘在同一栏的时称、星宿是以右行逆时针方向旋转,如此便能推演十二个月份干支对应的时称”。(41)黄儒宣: 《式图与式盘》,《考古》2015年第1期,第93—94页。为便于直观,我们将该复原方案的“正月”部分引述如下:(42)黄儒宣: 《式图与式盘》,《考古》2015年第1期,第101页。
表2 周家台秦简《二+八宿占》干支表
黄氏的复原无疑综合利用了“求斗术”的两段文字,从而得出了《二十八宿占》的十二月干支表。不过,这种复原方案仍旧存在很大的问题。例如,《二十八宿占》是否存在“戊己寄四维”的设计?正如我们前面所指出的,干支表A实际上就是后世六壬式盘中常用的“十干寄宫”法。而在后世的式盘中,戊、己虽寄居四维,但四维只有四个方位(东南、西南、西北、东北),故戊、己最多重出一次。如阜阳双古堆汉墓出土的六壬式盘,即是“土斗戊”“人日己”“天豦己”“鬼月戊”等四维,(43)殷涤非: 《西汉汝阴侯墓出土的占盘与天文仪器》,《考古》1978年第5期,第338页。六朝铜制六壬式盘则是以乾、坤、巽、艮配天门、地户、人门、鬼门。陈梦家曾统计过9种式盘或文献中戊、己的排列方式,虽然排列的具体方案有所差异,但都是戊、己重出,与地门、人门、天门、鬼门相配。(44)陈梦家: 《汉简年历表叙》,《汉简缀述》,北京: 中华书局,1980年,第264—265页。陈梦家还注意到,汉代牙式天盘(即于省吾旧藏“汉象牙七星盘”)“第三圈二十八宿分属二十四位,惟戊、己共四位各为二宿,故二十八”。(45)陈梦家: 《汉简年历表叙》,《汉简缀述》,第269页。关于汉象牙六壬式盘,参见于省吾: 《双剑誃古器物图录》,北京: 中华书局,2009年,第183—184页。由此可见,十二辰、八干加上四维,一共只有二十四位,并不能够与二十八宿一一对应。(46)《淮南子·天文》所载“斗乘二十四节气”,即在十二辰、八干基础上,加上了报德之维、背阳之维、常羊之维、蹏通之维,参见何宁: 《淮南子集释》卷三,第214—218页。而按照黄氏的复原方案,戊、己出现的频率是其余干支的四倍。而且,由于每月的日期同时与天干、地支相配,一个固定的日期便会匹配两个时称与星宿,如正月“甲寅”日,既可以是夕时,也可以是日毚入。由于戊、己与时称、星宿的组合数是其余干支的四倍,如果是正月戊子日,则可以配日出时、日过中、黄昏、夜过半、人定五个时称,对应氐、房、胃、东壁、虚五个星宿。而根据占辞,即便只就“占病”这一占测事项而言,氐宿为“笃”,房宿为“少可”,东壁、虚宿为“已”,胃宿为“未已”。(47)湖北省荆州市周梁玉桥遗址博物馆编: 《关沮秦汉墓简牍》,第111、113、114页。显然,《二十八宿占》不可能就同一个日期做出四种相互矛盾的占断结果。盖占卜之目的在于决疑,而不是增加疑惑以至于无从抉择。实际上,刘乐贤早就发现,虽然二十八宿可以与干支换算,但问题是,天干戊、己与八个星宿对应,到底该如何分配?这是难以解决的问题。(48)参见刘乐贤: 《睡虎地秦简日书研究》,台北: 文津出版社,1994年,第115页。更何况,从《二十八宿占》的线图来看,二十八宿是比较均匀分布为二十八等分的,从中并不能看到后世六壬式盘一样“戊己寄四维”的设计。(49)这些式盘实物图及相关配比情况,参见李零: 《中国方术正考》,北京: 中华书局,2006年,第71—76、 93—95页。由此可见,黄儒宣对《二十八宿占》的复原方案,并未解决这一式法的运用问题。
其实,黄儒宣的方案在很大程度上受到了孔家坡汉简《击》篇“斗击法”的启发与影响。比如,在《击》篇中,正月“申”击“平旦”,这与《二十八宿占》“此正月平旦系申”刚好相吻合。据此,黄氏排定了十二月平旦所击地支。不过,相对于《二十八宿占》采用的二十八时制,《击》篇使用的是常见的十二时制:
【正月 二月 三月 四月 五月 六月】 七月 八月 九月 十一月 【十二月】
【寅 卯 辰 巳 午 未】 申 酉 戌 亥 子 丑 击昏
【卯 辰 巳 午 未 申】 酉 戌 亥 子 丑 寅 击夕
【辰 巳 午 未 申 酉 戌 亥】 子 丑 寅 卯 击人郑 (定)
【巳 午 未 申 酉 戌】 亥 子 丑 寅 卯 辰 击夜半
午 未 申 酉 戌 亥 子 丑 寅 卯 辰 巳 击夜过半
未 申 酉 戌 亥 子 丑 寅 卯 辰 巳 午 击鸡鸣
申 酉 戌 亥 子 丑 寅 卯 辰 巳 午 未 击平旦
酉 戌 亥 子 丑 寅 卯 辰 巳 午 未 申 击日出
戌 亥 子 丑 寅 卯 辰 巳 午 未 申 酉 击食时
【亥 子 丑 寅 卯 辰 巳 午 未 申 酉 戌 亥 击日中】
【子 丑 寅 卯 辰 巳】 午 未 申 酉 戌 亥 击日失(昳)
【丑 寅 卯 辰 巳】 午 未 申 酉 戌 亥 子 击日入(50)湖北省文物考古研究所、随州市考古队编著: 《随州孔家坡汉墓简牍》,北京: 文物出版社,2006年,第136—137页。整理者认为,根据文例,在食时和日昳之间,应该还有一支简,作“亥子丑寅卯辰巳午未申酉戌亥击日中”,为了完整,我们在引文中直接列出。
整理者认为本篇可能与斗建有关,这是正确的。“击”即是斗击。墨子涵则指出:“《击篇》‘正月: 寅’与下面各月‘昏击’地支的排序同周家台(简244)的‘正月平旦击申者’完全符合《天文训》‘斗杓为小岁,正月建寅,月从左行十二辰’的地支模式。可知《击篇》的功能与周家台线图一样,即据北斗年转和日转在任何一个太阳月某日的任何一个时间段算出北斗的指向。”(51)墨子涵: 《从周家台〈日书〉与马王堆〈五星占〉谈日书与秦汉天文学的互相影响》,《简帛》第6辑,上海: 上海古籍出版社,2011年,第115页。
较之于《二十八宿占》,孔家坡汉简《击》篇的十二时能够完满地与十二支相配合,从而完全不需要考虑“十干寄宫”“戊己寄四维”等情况。因此,如果仿照《二十八宿占》的线图,我们很容易绘制出孔家坡汉简《击》篇的“正月平旦击申”的构想图(图6)。在这一式图中,十二支与十二时的对应关系,刚好与《击》篇的文字完全吻合。而若要得到二月平旦击酉,中间的“日廷图”只需要逆时针左行一次;相应地,外圈的十二时便顺时针右行一次了。这刚好符合“求斗术”中的“以廷子为平旦左行,数东方平旦以杂之”与“宿右行”。
图6 孔家坡汉简《击》篇“正月平旦击申”构想图
图7 周家台秦简《二十八宿占》“此正月平旦击申者”式图
在确定这一月星关系之后,参考《黄帝龙首经》“占月宿何星法”,我们就可以求斗乘之所在了。“以廷子为平旦左行,数东方平旦以杂之,得其时宿,即斗所乘也”,当与“占月宿何星法”之“常以月将加卯为地上乙所得星,右行如今日数止,即月宿星也”所示占法相似,所谓“数东方平旦以杂之”以及后文的“正月平旦系申”,即“月将加卯”,应该就是“月将加时”的一种早期表述方式。这段“求斗术”即表示: 将日廷图中的干支当作平旦,左行逆时针运行,数至东方位置的平旦位,二者杂错,从而形成新的式图,此时所得到的时辰与星宿便是北斗所乘。“此正月平旦系申者,此直引也”,则是以正月作为示例,与“占月宿何星法”的“假令二月五日”以二月作为示例相似。此时,参照孔家坡汉简《击》篇,我们可以得到这一式图样式(图7)。
由于《二十八宿占》采用了二十八时制,我们无法获得一个与《击》篇一样完满的式图。(52)整理者曾指出,尽管这里记录的时称为十二个,但其采用的可能是十六时制。也就是说,为了与十二支形成比较完满的搭配,这里的十二时也有可能部分改造了当时通行的时分制度,这与二十八时制为了配合二十八宿从而增衍出一些时称名的做法并无本质上的不同。也就是说,干支无法与二十八宿建立一个合理的搭配关系。不过,细审式图即可以发现,十二支与二十八宿形成了这样一种月星关系:
申,心、尾、箕;未,斗、牵牛;午,婺女、虚;巳,危、营宫、东壁;辰,奎、娄;卯,胃、卯;寅,毕、此巂、参;丑,东井、舆鬼,子,柳、七星;亥,张、翼、轸,戌,角、亢;酉,抵、房。
显然,与《二十八宿占》的月星关系对比,除了“危”宿当与“婺女、虚”同在一月之外,二者是完全相同的,也即汝阴侯式盘天盘中十二月与二十八宿之布局。而这种分布上的错乱,很有可能是因为“夜半”一栏所占空间过大造成的,即二十八宿并不曾像汝阴侯式盘一样均匀地分布在式图上。陶磊曾经指出,“将早期式盘上的信息集中到天盘,这样就形成后世式盘的格局”。(53)陶磊: 《〈淮南子·天文〉研究: 从数术史的角度》,第50页。而这种式盘布局之形式,显然是从“正月平旦系申”这样一种式图形式演变而来的。因此可以确定,《二十八宿占》的十二辰即可以视作十二月将。至于这里的干支与星宿的搭配何以与通行的情形有异,很有可能与《二十八宿占》的式占尚不成熟有很大关系。实际上,如果采用孔家坡汉简《击》篇与《淮南子·天文》“斗杓为小岁,正月建寅,月从左行十二辰”的地支模式,便可以弥合这一差异。
当确定正月的“月将加时”式图之后,“求斗术”又曰:“今此十二月子日皆为平,宿右行。”这段文字与“占月宿何星法”中“十二月皆持月将临卯,取乙上神所得星,右行数”基本一致,前者十二月的式图是以“廷子”指向“平旦”,后者则是“月将临卯”;而其所得之星宿“右行”,即“数右行营室一东壁二奎三为月宿星得奎也”。尽管我们对“求斗术”中的某些字词仍旧存在理解上的困难,但二者的相似性指示着这样一个最终结果: 《二十八宿占》的“求斗术”实际上就是早期的“占月宿何星”,“求斗术”实际上就是在推演“二十八宿直日”。(54)孔庆典曾经根据月星关系表直接得出这一结论,参见孔庆典: 《10世纪前中国纪历文化源流: 以简帛为中心》,第123、 124页。而无论是根据《二十八宿占》的月星关系表,还是根据“正月平旦系申”所得出的月星关系,这一“二十八宿直日”应该与北大简《雨书》、《黄帝龙首经》“占月宿何星法”的排列方式一致。如果我们考虑到睡虎地秦简《日书》甲种《星》、孔家坡汉简《日书·星官》有着与《二十八宿占》类似的占辞系统的话,这一稍显大胆的结论恐怕也是有其合理性的。
当然,无论本文对《二十八宿占》这一式占的尝试性解决方案是否成立,还是有关“求斗术”较多细节讨论的不足,都有待得到更多出土资料(包括早期式占文献与文物)的支撑,更需要发掘更多与“求斗术”“占月宿何星法”有关的传世式占文献以互相发明。
基于对周家台秦简《二十八宿占》的尝试性研究,我们还可以对《日书》“直心”篇做出一些新的解读,并以此作为本文研究结论的一个佐证。在放马滩秦简《钟律式占》和北大汉简《揕舆》中,占测的依据包括日、辰、星,有时又称作日、辰、时。程少轩指出,《钟律式占》“占‘日辰时’与占‘日辰星’的数术原理完全一致,时称和星宿在占卜中的地位是相当的”。(55)程少轩: 《放马滩简所见式占古佚书的初步研究》,《“中研院”历史语言研究所集刊》第83本第2分,第254页。《二十八宿占》外圈所载录的二十八时与二十八宿的搭配也是固定不变的,故二者可以相互替换。而在“求斗术”中,“平旦”是演式的起点,由于“平旦”与“心”宿本质相同,故“正月平旦系申”也可以理解为“正月平旦系心”。而在睡虎地秦简、孔家坡汉简《日书》中,就有所谓“直心”篇。睡虎地秦简《日书》甲种、乙种《直心》曰:
入正月二日一日心。入二月九日直心。入三月七日直心。入四月旬五日心。入五月旬二日心。入六月旬心。入七月八日心。入八月五日心。入九月三日心。入十月朔日心。入十一月二旬五日心。入十二月二日三日心。(56)睡虎地秦墓竹简整理小组编: 《睡虎地秦墓竹简》,北京: 文物出版社,1990年,第223、 239页。
孔家坡汉简《日书·直心》又曰:
……(十一月□)日 心,(十二)月 廿 四 日 心□……正 月廿一日,二月十九日,三月十七日,四月十五日,五月十二日,六月十日,七月八日,九月三日心,凡月之……(57)湖北省文物考古研究所、随州市考古队编著: 《随州孔家坡汉墓简牍》,第187、 154页。缀合参见孔庆典: 《10世纪前中国纪历文化源流: 以简帛为中心》,第121页。
尚民杰指出,这里的“直心”是十二个月中的某一天与二十八宿中心宿的对应关系,也就是在十二个不同的月份中心宿相当于哪一天。(58)尚民杰: 《云梦〈日书〉星宿记日探讨》,《文博》1998年第8期,第62页。据此,他得出了一个与“朔宿法”及《雨书》“二十八宿直日”完全一致的“二十八宿纪日法”。对于何以选择心宿来表示这一纪日法,孔庆典曾注意到“直心”很有可能是上古火历的残余,“直心篇”中每月直心日即大火星与月亮“相合”的日子。(59)孔庆典: 《10世纪前中国纪历文化源流: 以简帛为中心》,第265—267页。不过,这种历法上的残余并不能够说明此时的“直心”仍旧代表早期历法,这正如“日躔”与“朔星”的关系一样。因此,之所以选择心宿,或者正与《二十八宿占》这一早期式占以平旦、心作为运式起点有着密切的关系。
如放马滩秦简《日书》乙种有一枚与“直心”有关的残简,简文曰:“入八月四日、己丑旦〈直〉心。”整理者认为,“旦”应当是“直”字的误抄。孙占宇指出:“心,疑指二十八宿中的心宿。睡虎地秦简《直心》篇逐一罗列了正月至十二月每月‘直心’的日期,其中有‘入八月五日心’,与本篇相差一日。”(60)孙占宇: 《天水放马滩秦简集释》,第120页。按,放马滩秦简《直心》与睡虎地秦简《直心》相差一天的原因,很有可能是书写讹误,但未必不代表另外一种“直心”方法。在这种方法中,八月四日己丑正是心宿直日。此外,据学者考证,“八月四日、己丑”属于秦始皇三十年(前217)。详参程少轩: 《放马滩简式占古佚书研究》,“后记”,第237页。不过,对于认为误抄为“旦”的“直”字,《秦简牍合集〔四〕》又改回作“旦”,题为“旦心”篇。(61)武汉大学简帛研究中心、甘肃简牍博物馆编,陈伟主编: 《秦简牍合集〔四〕》,武汉: 武汉大学出版社,2014年,第53页。如果考虑《二十八宿占》“正月平旦系申”的设定,这里的“旦”便极有可能是“平旦”。在《史记》与西北汉简中,“平旦”即多写作“旦”。(62)陈梦家: 《汉简年历表叙》,《汉简缀述》,第244—249页。由此,本残简就可以写作“入八月四日、己丑,旦,心”。如果这一推论成立,便可以将序数纪日、干支纪日、时辰、星宿构建在一个统一的系统之中了。而所谓“直心”篇的设定,除了有源自久远的火历残余之外,也与早期式占有着密切的联系。