完成进行时的核心意义是表示:被描述的时间开始于现在之前,而且是有限(不会无限期地)持续下去。简言之,完成进行时的核心含义是表示“有限的延续性
延续事件概述
现在完成进行时强调动作的持续性,表示一个到目前为止尚未完成的活动。具体来说,它表示开始于过去的活动持续到现在,并且活动往往还没有结束,将继续持续下去。此时的完成进行时常与 for + 时间段、since + 时间点、all morning、all day、all week 等这样的表示一段时间的时间状语连用,以强调在这一段期间内,某项活动正在持续。
I ‘ve been studying English for over ten years now, but I still can’t speak it well
为此,根据延续时间长短的不同,可以区分四种不同的延续时间
- 长期在延续的事件
- 近期延续的事件
- 在说话时刻仍在延续的事件
- 在说话时刻之前在延续的事件
在讨论在上述这四类延续事件的特点时,还要考察它们是更接近现在完成时还是更接近现在进行时,这样有助于真正的理解完成进行是的内涵。
一、长期在延续的事件
I’ve been learning English for over ten years now.
我学英语到现在有十多年了
从以上例句可以看到,这些现在完成进行时表达的都是在相当长的一个时间段内( 比如for 30 years)持续的一般性活动。说它们是“一般性活动”,是因为这些活动并不具有很强的“正在进行”的动作的意味,或者说这些活动在说话的时刻一般并不正在持续。这些活动类似于一个持续的状态,更具有状态的意义,而没有多少动作的意义。所以,现在完成进行时的这一用法与“现在进行时态”的关系较远,而与“现在完成时态”的关系更近,完全类似于现在完成时所表达的“延续事件”的意义。比如,如果把上述句子的时态改成现在完成时态,也同样是正确的表达,而且意义上没有多大差别( 详见6.4.2 节),所以可以这样说;
I’ve learned English for over ten years now.
并不是所有的动词用于现在完成进行时都能表示一个长期在持续的事件
He has been repairing his car since 6:00 this morning.
He has been repairing his car for almost 20 years.
从对以上两个例句的比较可以看出,像repair 这样的表示单一具体动作的动词用作谓语时,若句子接有一个表示较短时间的状语,则表示延续的活动; 但若句子接一个表示较长时间的状语,则表示一个重复的活动也就是说,像repair这样的动词虽然具有一定的延续性,但持续的时间不能太长,所以这类动词被称为有限延续动词。英文中的大多数动词都是有限延续动词。关于像repair 这样的动词用于表示较短时间的状语和用于表示较长时间的状语时产生的不同语义,6.5.2节将有详细讨论。由此可见,能够表示长期延续事件的谓语动词不能是那些动作意味很强的动词。在英文中,像study ,live, work, lean, teach 和wait 这样的动词并不能表达出某一具体的动作,它们近乎于一种状态的延续,这样的动词被称为无限延续动词。这一部分动词在英文中比较少。因此,现在完成进行时在表示长期持续的事件时,其谓语动词必须是一些无限延续动词。
当然,对于无限延续动词来说,其所接的事件状语不论长短,都表示延续事件的意义。例如work 是无限延续动词,表示一种状态,所以下面两句不论是表达短时间的状语 for two hours 还是表达长时间的状语 for 30 years ,都是表示延续事件
He has been working on the puzzles for two hours.
He has been working in the same job for 30 years
在英文中,像study, live, work 和wait这种无限延续动词并不多,更多的是有限延续动词。因此,当这些有限延续动词用于完成进行时的时候,往往都是接表达较短时间的状语才能表示延续事件。这正体现了现在完成进行时所具有的“有限延续性”的特点。将在下面的6.3.3、6.3.4 和6.3.5 三节中讨论的延续事件,都是在较短时间内持续的活动。
二、近期延续的事件
现在进行时一样可以表示一个在近期持续的一般性活动由此可见,现在完成进行时表示“近期在延续的事件”这一用法与现在进行时的关系更密切。
在口语中,如果想要表达“我一直想干什么”或“我早就想干什么”,可以说 I have been wanting to do sth. 或 I have been meaning to do sth;如果要表达“一直想要什么”,可以说 I have been wanting 。
Thank you so much for the binoculars, I’ve been wanting a pair for ages.
对于上面的众多例句,完全可以套用到日常口语中,所以请读者注意模仿使用。从上面这些例句可知,现在完成进行时的这一用法在大多数情况下是不带有持续时间状语的,不过也可以带有持续时间状语( 如for the past couple days),都可以表示个近期在持续的一般性活动。
另外要注意,这里的“近期”是一个相对概念,可能是近几天,也可能是近几个星期,甚至是近几个月。所以,这里所讨论的“近期”与上一小节讨论的“长期”并没有明确的界限,完全是根据实际生活经验来判断的。比如上面的例句:
Thank you so much for the binoculars. I’ve been wanting a pair for ages.
I have been wanting to meet you for long.
也可以看作是“长期在持续的事件”。最后顺便要说的是,现在完成进行时表示“近期在延续的事件”的用法,与下面的6.3.4 小节将要讨论的现在完成进行时表示“说话时刻仍在延续的事件”的用法不同,因为前者关心某个活动在“最近一段时期内”是否在持续,而后者的语义重点是关心某个活动在“说话时”是否正在进行。
三、在说话时刻仍在延续的事件
I’m staring at this computer. I’ve been staring at this computer screen for hours and my eyes hurt
现在完成进行时表示“在说话时刻仍在延续的事件”这一用法与现在进行时很接近,比如上面这个例句,可以同时使用现在进行时 am staring 和现在完成进行时 have been staring。只不过,现在进行时态不能接持续的时间状语,而现在完成进行时往往都会接一个这样的状语。
以上例句都表示一个活动由过去开始并且持续到现在的说话时刻,而且还一直在持续。不过,可能由上下文告知,开始于过去的动作持续到现在为止不再继续。
Where have you been? I’ve been looking for you for the last half hour.
四、在说话时刻之前在延续的事件
He returned home yesterday. He has been traveling
但是,更多的时候,某个事件“刚刚在延续”并不会像上面这两个例句这样明确地表达出来,而是通过上下文来表明这个事件是“刚刚在延续”
You look hot
Yes, I’ve been running
从上面这个例句可知,现在完成进行时的这一表示“刚刚在延续的事件”的用法往往是强调一个持续活动所带来的、现在清晰可见的后果。简言之,就是表示刚刚停止、现在能看到结果的一个事件。通过这个时间的清晰可见的后果可以表明该事件刚刚在延续。
现在完成进行时在表示“刚刚在延续的事件”时,一般不接持续的时间状语。若接持续的事件状语,则往往表示一个延续至今的事件。
不过也不尽然,需要看上下文,如果没有上下文,那么就可能由歧义。
I’ve been standing outside in Arctic temperatures for over an hour waiting for a bus.
不过,在没有上下文语境帮助排除的情况下,对于带有持续的时间状语的完成进行时的句子,我们一般会解释成“一直在延续”。对于没有持续的时间状语的完成进行时的句子,我们一般会解释成“刚刚在延续”的事件。说到底,就是看上下文。
延续事件比较
延续事件比较(一):完成进行时与完成时
My hands are dirty. I’ve been cleaning car. 我的手很脏,我刚刚一直在洗车来着。
I’ve just cleaned the car. 我刚才把车洗了
从这个例句可以得出二者的两点区别。
- 第一,现在完成进行时强调活动本身的持续性; 现在完成时强调活动的结果,或者说强调活动的成果。
- 第二,从谓语动词的延续性的角度来看,现在完成进行时的“刚刚在延续的事件”的用法所采用的动词一定都是延续性动词,以表示一个延续活动; 现在完成时的“单一事件”的用法所采用的动词都是短暂动词,或者用作表达短暂性的动词,不表示一个延续活动。
所以,现在完成进行时可以接持续的时间状语,但意思往往会不同; 而现在完成时“单一事件”的用法是不能接持续的时间状语的。这就证明二者在谓语动词的延续性方面有差别。
现在完成进行时的这一用法与现在完成时态的关系更接近,而与现在进行时的关系较远,因为现在进行时没有表示事件在说话时刻已经结束的用法。
比较(二)完成进行时的“延续”与完成时的“延续”
一、在带有持续的时间状语时,用两种时态几乎没有多大区别,都表示一个开始于过去的动作一直延续到现在。
I have been learning English for ten years
I have learned English for ten years
不过也有这样一种观点,认为此时二者的席位区别在于:现在完成进行时会强烈暗示动作会继续持续下去;而现在完成时则往往表示动作有可能会持续下去。
得出结论:完成进行时比完成时更强调活动本身的持续性,这时进行时态赋予它的特点。
二、不与持续的时间状语连用
接下来分析在没有持续的时间状语时,二者在时态上的区别。第五章5.4.2 节分析过,表示“延续事件”的现在完成时必须具备两个条件其中之一就是必须与持续的时间状语连用,如果没有持续的时间状语,则不表示延续至今的事件,而表示在过去完成了的事件,即表示“单一事件”中的过去的经历。而现在完成进行时在没有持续的时间状语的情况下,依然可以表示延续至今的事件。请比较:
I have worked in this company 我在这家公司工作过
I have been working in this company 我一直就在这家公司工作
重复事件
现在完成进行时表示“重复事件”的用法主要分为两种情况:一种是“短暂动词”用于现在完成进行时可以表示一个重复事件,这是最典型的重复事件的用法; 另一种是“有限延续动词”用于现在完成进行时可以表示一个重复事件。
短暂动词
I have been coming to Beijing for 14 years
14年间我多次来到北京
用短暂动词的完成进行时来表示到目前为止的一段时间内重复发生的动作
提醒:短暂动词用于完成进行时态一般不宜接“短的时间状语”
Mike has been winning that race two hours. (X)
这句话是没有太大的实际意义的,因为一个人不可能在两个小时内连续两次甚至多次赢得某个比赛的胜利。
有限延续动词
如果接一个“较长的时间段”,则表示的是一个“重复活动”;如果接一个“较短的时间段”,则表示的是一个“延续活动”。
不过,即使对于无限延续性动词,也可能会通过其他方式来表达重复活动。
I’ve been working on the night shift for several weeks
近几个星期以来我一直在上晚班
重复事件比较:
完成进行时态不能用来谈某个动作的具体次数或几件事情。这时要用完成时态。
I have been drinking five cups of coffee this afternoon. (X)
完成进行时态不能用来谈具体的几次或几件事,换句话说,它所表示的重复动作是不能被分割开来的,而只能看作是一个不间断的过程,这是进行体赋予它的特点。完成时态则常常表示间断的重复活动,可以标明具体几次或几件事,这也是完成时强调活动结果的体现。现在完成进行时表示的重复活动都是不能说出具体次数的,而只能从上下文体会出来,或者依据我们的实际经验体会出来。
因此,可以这么来看待两种时态所表示的重复活动:现在完成进行时的重复是“隐性”的,是模糊的,它的重复性是根据人们的实际经验体会出来的;现在完成时的重复是“显性”的,是明确的:
- I’ve been writing letters this morning
- I’ve written three letters this morning.
比较:
短暂动词用于现在完成进行时可以表示一个重复活动,这时往往都会接一个表达较长的持续时间的状语。
I have been coming Beijing for 14 years.
短暂动词的完成进行时可以与持续的时间状语连用,来表示一个重复活动。但是,短暂动词的完成时是不能与持续的时间状语连用的,因为短暂动作无法延续,这与持续的时间状语形成语义上的冲突。如果短暂动词的完成时要表示重复活动,只能加上具体的次数。
现在完成进行时表示“重复事件的一个重要概念就是:到目前为止的一个事件段内重复活动。”而一般现在时就不同。
比较:
完成进行时强调“延续过程”, 完成时强调“成果”
- 未完成与已完成
- 延续过程与结果或成果
- 感情色彩不同
由于完成进行时更强调动作的延续性,因而往往带有强烈的感情色彩,较为口语化。所以,在口语中完成进行时使用得较为普遍。而现在完成时则只是说明一个事实,一种结果,较为平铺直叙,缺乏明显的感情色彩。
- 重复活动:完成进行时强调持续,不讲次数;完成时强调成果,讲次数。
完成进行时与完成时的意义比较
大家知道,完成进行时有两个基本意义,延续事件和重复事件。而完成时有三个基本意义:延续事件重复事件和单一事件我们现在来一一进行比较,让读者更好地认识这两类时态的相关性,
- 延续事件
二者最大的区别在于持续的时间状语。一方面,在带有持续的时间状语时,用两种时态几乎没有多大区别,都表示一个开始于过去的动作直延续到现在(详见。4.2小节),另一方面,如果没有持续时间状语,完成时则不表示延续至今的事件,而表示一个在过去完成了的事件(即表示“单一事件”中的过去经历),但是,现在完成进行时没有持续的时间状语的情况下.依然可以表示延续至今的事件,由此可见,完成进行时比完成时更强调活动本身的持续性。
另外,由于完成进行时更强调活动的持续性,因此还可以把它的延续事件进一步细分成四种不同的延续事件长期在延续的一个一般性活动近期在延续的活动: 在说话时刻仍在延续的话动: 在说话时刻之前在延续的活动,或者刚刚在延续但现在已结束的活动(详见6.3节)。 - 重复事件
二者在表示重复事件时,最大的区别就在于事件的可分割性(详见6.6节) 现在完成进行时表示重复活动时,不能被分割开来,即不能说出具体的次数。它的重复性是根据人们的实际经验体会出来的面完成时表示的重复活动,往往要说出具体的次数。因此,可以这样来看二者的差別: 现在完成进行时的重复是“隐性”的,是模糊的: 现在完成时的重复是“显性”的,是明确的比如:
I have received 100 letters from my readers over the past few years 近几年来我收到了100封读者来信。
I have been receiving letters from my readers over the past few years 近几年来我不断地收到读者来信。
完成进行时表示重复事件时不能被分制,这是由它的“有限延续性“这一核心意义决定的既然是“延续”的那么当然就不能把某个动作断开来数具体的次数。
另外,完成进行时用于短暂动词时,是表示一个“重复事件”面完成时用于短暂动词,则是表示“单一事件”。比如:
He has come to Beijing 他已经到了北京。
He has been coming to Beijing for 10 years. 10年来他多次来北京。 - 单一事件
完成时具有“单一事件”的用法,而完成进行时则没有这样的用法。不过,还是可以找到一个大概与单一事件”对应的完成进行时的用法,这就是完成进行时表示的“刚刚在延续的事件“(详见6.3.5小节和6.4.1小节)
二者有三个同点 :
- 第一、二者都表示个事件在说话的时刻已经结束:
- 第二,二者都伴随有现在清晰可见的后果:
- 第三,二者都不接持续性的时间状语。不过,需要注意的是,现在完成进行时是可以按持续的时间状语的。但意思往往会不同: 而现在完成时“单一事件”的用法是不能按持续的时间状语的。
二者最大的区别在谓语动词的延续性方面,现在完成进行时“刚刚在延续的事件”的用法所采用的动词一定都是延续性动词,以表示个延续活动: 现在完成时“单一事件”的用法所采用的动词都是短暂动词,或着用作短暂性的动词。不表示一个延续活动。所以,现在完成进行时是可以接持续的时间状语的,但意思往往会不同.
而现在完成时“单一事件”的用法是不能接持续的时间状语的。比如:
- He has just arrived.
- He has been running.