内容正文:
现在完成时&过去完成时
现在完成时是指过去发生或已经完成的动作对现在造成的影响或结果,或从过去已经开始,持续到现在的动作或状态,由have / has + V-ed构成。
其基本用法包括:
1. 表示一个过去发生的动作或状态一直延续到现在,常和“for +时间段”与“since + 时间点”结构,或和表示从过去某时 到现在这段时间的时间状语(如:lately,recently,in the last / past few days / years,since then,by now, up to now,so far等)连用。
eg I haven’t seen Clair since last Monday evening.
By now, I have collected all the information that I need.
So far my time in China has been very rewarding.
2. 表示过去发生的动作对现在产生的影响,通常不与时间状语连用,却常与already,just, never,before,yet (常用否定句和疑问句中)等副词连用。
eg Have you had your supper yet?
It’s unbelievable that she has been there a week already.
3. 表示从过去到现在的反复性学习和习惯性学习,常和always, often, frequently, ever, never, many times等表示频度的副词或短语连用。
eg My father has always gone to work by bike.
4. 现在完成时用于以下固定句型中:
① This / It is the first / second ... time + that从句。从句的谓语要
用现在完成时。
② It is +一段时间+ since +从句,从句谓语为瞬间动词的过去时。
eg This is the first time (that) I have come here.
It’s five minutes since Bob came here.
现在完成进行时
现在完成进行时表示某个动作从过去某个时间开始,到现在为止一直在进行,这个动作可能仍在进行,也可能刚停止,由have / has been + V-ing构成。其基本用法包括:
1. 表示过去开始的动作一直延续到现在并仍在继续,它常和how long,for + 时间段,since + 时间点结构及all the time, all day / night (long),all the morning等连用。
eg How long have you been wearing glasses?
They have been quarrelling ever since they got married.
Alvin has been expecting a long distance call all night long.
2. 表示过去开始的动作刚结束并在某种情况下与现在有关联。
eg Does he feel tired? He has been standing there for two hours.
现在完成进行时与现在完成时的区别
1. 现在完成进行时和现在完成时皆可表示过去开始的动作对现在产生的影响,但前者所表示的影响是直接的,强调动作的持续性,不涉及动作是否完成,而后者所强调的则是最后的影响。
如:
We have been cleaning the classroom.(动作尚未完成)
We have cleaned the classroom.(动作已完成)
2. 现在完成时往往表示动作在重复,提问时用how many times;而现在完成进行时表示持续的、不间断的动作,询问动作的延续性时,多用how long。如:
How many times have we heard the leader say that?(强调动作重复)
How long have you been living in this country?(强调动作延续)
3. 一些表示感情和情绪的动词,如:like, love, fear, want, wish等; 表示精神活动的动词,如:believe, expect, imagine, feel, think, know等;感官动词,如:look, see