完成时

另一种主要的状态是完成式。相对于一般时括弧形状来表达时间,完成时则是以(箭头形状→)来表达时间,表示(动作的截止时间)。从功能上来看,一般时是交代动作发生的时段,而完成时并不对动作发生的时段作明确的交代,只表示“曾经”、“做过”的意思。请看看下面的例句。

一、现在时间

主要从句 I'm sure 的动词 am 表示是现在时间,除此之外,没有时间副词交代是什么时候“看到”这张脸的,只知道一定有见过。也就是说,“看到”的动作没有明确括出来是哪一个时段发生的,只有一个箭头的形状,表示截止时间是现在。在这一刻以前看到过都算数,以后才要去看则不算数。这就是现在完成时的条件,所以用 have seen(看过)。

把 be动词当做动词看,那么再复杂的动词时态也只剩下两种变化,不是一般时就是完成时。这里用完成时,因为时间副词 for a week 是“到现在,算算有一个星期之久了”,这时候重点在于“算 到现在已经有……了”,所以强调的是截止时间,是箭头形状的时间,要用完成时“已经”来配合,所以动词用 have been。后面的补语 working 是现在分词,表示持续性,也就是“一直在加班”,用来形容主语“我们”。动词 have been 是 be动词,不必翻译,只要解释完成时的部分“已经”和时间副词“有一个星期”就可以了。

这个句子的时间副词 since they moved in (打从他们搬来算起)虽然是表示开始计算的时间,可是语气的重点是“算到现在是多久”,所以仍然用完成时 has been。补语部分 redecorated 是过去分词,要加上被动的解释,成为“被装修”,来形容主语“房子”。

二、过去时间

如果没有特别交代的话,一般说“有…过”就是“到现在有…过”,所以都是现在完成时。用过去完成式时则要有一个过去的截止时间,也就是箭头指在一个过去时间,在那之前就 “有…过”

盘尼西林在 1928 年发现,可是这个句子的时间副词不是 in 1928 一个括弧,而是 before the discovery of penicillin,也就是 before 1928,是一个以 1928 年为截止时间的箭头形状,所以要用过去完成时 had died。换句话说,这个句子说到的士兵从古罗马时代,一直到一次大战都可以算在里面,但 1928 年之后的就不算了,因为盘尼西林已经发现了。这就是过去完成时的条件。

decided 是过去时间,而时间副词 before I decided 是“在我决定之前”,所以不是括弧而是箭头,以 decided 为截止时间。这就得用过去完成时 had been。补语 smoking three packs 是一个形容词短语,-ing 表示持续性,也就是每天都要抽三包烟,而且是“一直如此”,用来形容主语“我”。

这个句子的时间副词是“算到德国投降为止”,所以是一个到过去时间截止的箭头。这就是过去完成时。动词 had not been 表示“尚未”,就是“已经”的相反。be动词仍不必翻译。补语部分 defeated 是过去分词,表示被动的形容词,“被打败”用来形容主语“日本”。

三、未来时间

未来时间的完成时,只是把箭头所指的截止时间移到未来的一个点。观念上与现在、过去时间的完成时完全一样。在写法上,因为是未来时间,所以动词前面加一个 will 就可以了。请看例句。

年”来修饰动词,所以要用完成时。动词前面加上 will,表示到现在还没有,要到四月才“会”做满 20 年,也就是将来完成时。

In two more minutes,she will have been talking on the phone for three hours! (再过两分钟,她就一直打了足足三小时的电话了!)

这位小姐也真能讲话。动词是 be动词,连接主语 she 和补语 talking,“她一直讲”,-ing 的字尾表示持续性,当形容词看。“再过两分钟”是未来的一个截止点,算到那时候就有三小时了(for three hours),所以是完成时的箭头型时间,要用将来完成时的动词 will have been,“会已经”(有三小时)。再和主语“她”与补语“一直打”连在一起,意思就清楚了。

Last updated