《史记·历书》中载:

一、“夏正以正月,殷正以十二月,周正以十一月。”

二、“天下有道,则不失纪序;无道,则正朔不行于诸侯。”

三、“秦灭六国,......而正以十月,色上黑。”

《孝武本纪》载:

“夏,汉改历,以正月为岁首,而色上黄,......因为太初元年。”

《太史公自序》中则记载司马迁是在汉武帝太初元年改正朔后,开始写史记的。

由此可知,司马迁在史记中,可使用的历法有:夏历、殷历、周历,秦历,太初历,其中,太初历和夏历都是以正月为岁首的。

在史记中,如果不是专门对日期加以注意,是不会发现一些看似自相矛盾的记载的。例如,《秦始皇本纪》中:

“三十七年十月癸丑,始皇出游。......七月丙寅,始皇崩于沙丘平台。”

何以在始皇三十七年中,十月然后有七月呢?

还有,《白起王翦列传》中:

“四十八年十月,秦复定上党郡。......正月,皆罢兵。......其九月,秦复发兵。......四十九年正月,(王)陵攻邯郸。”

这段记载也比较奇怪,四十八年先十月,后正月,然后再四十九年正月,初看起来,司马迁没有按照时间顺序记载。不过这一段尚属于可以解释的,司马迁是按照事件归类记载的。然则,像史记中的这类“四十八年十月”,究竟指的是何种历法的?

因此,有必要解决以下问题:

  1. 司马迁在史记中使用的何种历法?
  2. 本纪、世家、列传中的历法是否始终如一?还是按各国的历法?
  3. 古代改正朔,名称有改么?例如,殷代把十二月作为岁首,那么,十二月是被改叫做正月了吗?还是说仅仅只是把十二月作为新年的第一个月,名称还是十二月?

只有解决这些个问题,才能理解史记中的事件时期。

这些问题的解决需要详细查看史记,有待以后做出。下面仅就始皇帝出游的记载做些推论。

仅从上面的推论来看秦始皇记载的问题,可以有以下的一些推论:

一、从癸丑到丙寅,其相差是13天,根据干支纪日法,可知秦始皇在外的时间肯定是 60n+13 (n为正整数)。

二、司马迁没有写成“三十八年七月丙寅”,可见,始皇帝的纪年是采用秦历,秦历十月为岁首,因此,从始皇三十七年十月到七月,还不到一年,因此还在始皇三十七年内。

三、案第二条推论,皇帝纪年采用秦历,但月份还是夏历。否则,既然十月是秦历岁首,那么我们不是应当看到“三十七年正月癸丑,始皇出游”这样的记载吗?因此可以推断,虽然改了正朔,但是月份的名称并没有改,亦即,只是规定十月是新年开始,但还是叫十月,并没有叫正月。

四、因此,从三十七年十月癸丑,到七月丙寅,是跨了夏历年的,共有九个月,约270天,但是矛盾又来了,270并不是60的倍数,与第一条推论相悖,因此,可以推断,这段时间内,应该有一个闰月,因此 300+13,秦始皇出游了313天。这样一切都可以说通了。

因此,我们可以知道例如下面的推论:

比如,始皇帝三十五年,实际上是从当年的十月开始的,到次年的十月,变为始皇帝三十六年。以此类推。

以上的推论只是根据史记的只言片语的记载中推理,具体的验证待详查当时的日历。

今可引《陈涉世家》作为佐证:

“二世元年七月,发闾左谪戍渔阳九百人屯大泽乡。”
“腊月,陈王之汝阴,还至下城父,其御庄贾杀以降秦。陈胜葬砀,谥曰隐王。”
“陈胜王凡六月。”

又《秦始皇本纪》载:

“七月,戍卒陈胜等反故荆地,为张楚。”
“二年冬,......杀陈胜城父。”

我们已经知道,秦朝以十月为正,因此二世元年七月到二年腊月,其实在同一年内,因为:

二世元年七月、八月、九月、十月(二世二年)、十一月、十二月。

按秦历,同一年的十月,就已经改年为二世二年了,因此,如果从七月初算到十二月底,陈胜的起义维持了六个月。这样就符合了司马迁所写的“陈胜王凡六月”的说法。