
现在完成时和过去完成时的区别
-雷锋多少岁
2023年2月15日发(作者:魔兽世界感恩节)精品文档
.
现在进行时和现在完成进行时区分:
区分havedone和havebeendoing,我们需要从两个方面来讨论:
一、完成时态和完成进行时态本身意义的差别;
二、要结合动词的不同延续特点.首先我们来看两种时态的意义差别
两者根本区别是:完成进行时强调动作持续的过程(emphasisonduration),完成时强调动作的
结果或成就(emphasisonachievement).具体来讲,现在完成进行时havebeendoing强调的是在
一段时期内某项活动的持续性,强调的是动作本身.现在完成时havedone则是强调动作产生
的结果或取得的成就,而不是动作本身.二者的这种区别我们从下面的这些例句可以很好地领
悟到:(2)sareverydirty.I’aintedthehouse
sewaswhite,butnowit’sgreen.
思维分析:
句a中havebeenpainting表示painting动作一直在持续,活动还没有结束,所以才有myhands
areverydirty这样的现状.句a意思是“我的手很脏,我现在一直在给房间刷漆”.
句b中havepainted表示painted动作已经结束,而且动作导致的结果是thehousewaswhite,but
nowit’sgreen房间现在是绿色的了.
现在完成时表示动作业已完成,而完成进行时却不一定如此
I’vemadeacake.我做了一个蛋糕.(已做好)
I’vebeenmakingacake.我一直在做一个蛋糕.(不一定做好了
She’spaintedapicture.她画了一幅画.(已画好)
She’sbeenpaintingapicture.她在画一幅画.(可能还没画好)
强调时间长度用完成进行时比较好:I’vebeencoughingallnight.我咳了一整夜.(比I’ve
coughedallnight.更能强调咳得久)
Allthetimeshe’sbeensittingthereinsilence.她一直静坐在那里.
Alltheseyearswe’vebeentryingtogetintouchwithhim.这些年来我们一直在设法和他联系.
许多静态动词都只能用于完成时而不能用于完成进行时:
I’veknownthatforalongtime.这事我已经知道很久了.
Thestrikehaslastedsixmonths.这次罢工已经持续了6个月.
Nobodyhasseenhimsincelastweek.从上周起就没人见到过他.
raiseinsalaryallthetime.他一直盼着加薪.
但当意思发生转变时也可能用于完成进行时:
I’vebeenthinkingofdoingsoforalongtime.我好久以来一直想这样做
.Tomhasbeenseeingaboutaworkpermitforyou.汤姆一直在设法帮你取得工作许可证.
有少数动词用两种时态都可以,意思差别不大,如:
Theyhavebeenworkingverywellthisterm.这学期他们学习很好.Theyhaveworkedverywell
thisterm.
Ithasbeenrainingfortwohours.下了两个小时的雨.Ithasrainedfortwohours.
过去完成时
一、过去完成时的概念与结构特点
概念:过去完成时表示在过去某一时间或动作之前已经发生或完成了的动作,即“过去的过
去(past-in-the-past)”。
----|--------------------------
|-------------------------------|---------------------------->
那时以前那时现在
构成:过去完成时由“助动词had+过去分词”构成,其中had通用于各种人
精品文档
.
称。finishedwriting
thecompositionby10:00thismorning.
二、过去完成时的判断依据
1.由时间状语来判定
一般说来,各种时态都有特定的时间状语。与过去完成时连用的时间状语有:(1)by+过
去的时间点。
如:Ihadfinishedreadingthenovelbynineo'clocklastnight.
(2)bytheendof+过去的时间点。
如:WehadlearnedovertwothousandEnglishwordsbytheendoflastterm.
(3)before+过去的时间点。
如:TheyhadplantedsixhundredtreesbeforelastWednesday.2.由“过去的过去”来判定。
过去完成时表示“过去的过去”,是指过去某一动作之前已经发生或完成的动作,即动作有
先后关系,动作在前的用过去完成时,在后的用一般过去时。这种用法常出现在:(1)
宾语从句中
当宾语从句的主句为一般过去时,且从句的动作先于主句的动作时,从句要用过去完成时。
在told,said,knew,heard,thought等动词后的宾语从句。
如:Shesaidthatshehadseenthefilmbefore.(2)状语从句中
在时间、条件、原因、方式等状语从句中,主、从句的动作发生有先后关系,动作在前的,
要用过去完成时,动作在后的要用一般过去时。如:
WhenIgottothestation,thetrainhadalreadyleft.
Afterhehadfinishedhishomework,hewenttobed.
注意:before,after引导的时间状语从句中,由于before和after本身已表达了动作的先后
关系,若主、从句表示的动作紧密相连,则主、从句都用一般过去时。
如:Wheredidyoustudybeforeyoucamehere?
Afterheclosedthedoor,helefttheclassroom.
(3)表示意向的动词,如hope,wish,expect,think,intend,mean,suppose等,用过去完成时
表示"原本„,未能„"
Wehadhopedthatyouwouldcome,butyoudidn't.3.根据上、下文来判定。
'tseeneachothersincehewenttoBeijing.
三、过去完成时的主要用法
1.过去完成时表示一个动作或状态在过去某一时间或动作之前已经完成或结束,即发生在
“过去的过去”。如:
WhenIwokeup,ithadstoppedraining.
我醒来时,雨已经停了。(主句的动作发生在“过去的过去”)
2.过去完成时是一个相对的时态,表示的是“过去的过去”,只有和过去某一时间或某一动
作相比较时才使用它。如:
Hetoldmethathehadwrittenanewbook.(hadwritten发生在told之前)
3.过去完成时需要与一个表示过去的时间状语连用,它不能离开过去时间而独立存在。此时
多与already,yet,still,just,before,never等时间副词及by,before,until等引导
的短语或从句连用。
如:
BeforeshecametoChina,GracehadtaughtEnglishinamiddleschoolforaboutfiveyears.
Peterhadcollectedmorethan300Chinesestampsbythetimehewasten.
4.过去完成时表示某一动作或状态在过去某时之前已经开始,一直延续到这一过去时间,而
精品文档
.
且动作尚未结束,仍然有继续下去的可能。
如:Bytheendoflastyear,hehadworkedinthefactoryfortwentyyears.(hadworked已有
了20年,还有继续进行下去的可能)
5.过去完成时也用于hardly...when...(刚„就„),nosooner...than...(刚„就
„),Itwasthefirsttime+that等一些固定句型中。
Hehadnosoonerlefttheroomthantheybegantotalkabouthim.他刚离开房间,他们就议论起
他来。Wehadhardlybegunwhenweweretoldtostop.
我们刚开始就被叫停。
Itwasthefirsttimethathehadeverspokentomeinsuchatune.他用这样的语调跟我讲话,这是
第一次。
四、过去完成时与现在完成时的区别
现在完成时表示的动作发生在过去,但侧重对现在产生的结果或造成的影响,与现在有关,
其结构为“助动词have(has)+过去分词”;过去完成时则是一个相对的时态,它所表示的
动作不仅发生在过去,更强调“过去的过去”,只有和过去某时或某动作相比较时,才用到
它。试比较:
Ihavelearned1000Englishwordssofar.到目前为止我已经学会了1000个英语单
词。Ihadlearned1000Englishwordstillthen.到那时为止我已经学会了1000个英语单词。
—I'msorrytokeepyouwaiting.对不起,让你久等
了。—Oh,eenhereonlyafewminutes.
没什么,我只等了几分钟。(“等”的动作从过去某一时间点持续到现
在)—Johnreturnedhomeyesterday.约翰昨天回到家的。—Wherehadhebeen?
他去哪儿了?(答语中使用过去完成时是指约翰在returnedhome之前去了哪些地方,即“过
去的过去”)
五、过去完成时与一般过去时的区别
虽然这两种时态都表示过去发生的动作或存在的状态,但在使用时应注意以下几点:
1.时间状语不同:过去完成时在时间上强调“过去的过去”;而一般过去时只强调过去某一
特定的时间。试比较:
rivedatthestationattenyesterday.
2.在没有明确的过去时间状语作标志时,谓语动词动作发生的时间先后须依据上下文来判
断:先发生的用过去完成时,后发生的则用一般过去时。如:
lefamilywerepleasedwithher,justwonthefirstint
hecompositioncompetition.
3.当两个或两个以上接连发生的动作用and或but连接时,按时间顺序,只需用一般过去时
来代替过去完成时;另外,在before,after,assoonas引导的从句中,由于这些连词本身
已经表示出时间的先后,因此也可以用过去时来代替过去完成时。如:
Heenteredtheroom,turnedonthelightandreadaneveningpaper.
I(had)calledherbeforeIlefttheoffice.重点
英语中,已经有了一个过去一般时表示在过去发生的动作,为什么还有过去完成时呢?要记
住:过去完成时的关键概念是:假设在过去发生了两件(或以上)的事件,一件是A事件,另
一件是B事件,如果A、B两个事件几乎是同时发生的,那就用一般过去时;但是,如果A、
B两个事件不是同时发生的,怎么办呢?那就是:哪个事件先发生,就用过去完成时;哪个
事件后发生,就用过去完成时。在上面的假设中,如果A事件先发生,A就用过去完成时;
如果B事件先发生,B就用过去完成时;而不管两件事是用什么样的时间状语或其它形式
表示的。请看例句:
精品文档
.
[例1]Shesaid(that)shehadneverbeentoParis.
[例2]Whenthepolicearrived,thethieveshadrunaway.
[例3]Wehadhopedthatyouwouldcome,butyoudidn't.
[例4]Tomwasdisappointedthatmostoftheguestshadleftwhenhearrivedattheparty.[例
5]
Thestudentswerewriting,busilywhenMissBrownwenttogetabookshehadleftintheoffice.
在上面的五个例子中,我们只要稍微分析一下,就可以发现:每个例子讲述的内容中,都包
含着两个(或以上)在过去发生的事件。我们将两件事抽取出来看一下,就非常明白:必定有
一件事是先生的,另一件是后发生的:
[例1]„„said„„hadneverbeento(先没有“去”,后“说”)
[例2]„„arrived„„hadrunaway.(先“跑”了,后“到”)
[例3]„„hadhoped„„wouldcome„„didn't(先“希望”,后才发生“没去”)
[例4]„„wasdisappointed„„hadleft„„arrived(先“离开”,后“到达”和“失望”)[例5]
„„werewriting„„went„„hadleft(先“离开”,后“到”和“写”)难点
过去完成时的难点在于:有时候一句话中并没有出现两个事件,因此无法比较两个事件的先
后。那为什么也用过去完成时呢?请看下面的例句:
[例1]Bythetimehewastwelve,Edisonhadbegantomakealivingbyhimself.
实际上,在上面的例句中,仍然有着“先、后”之分的。不过,这次不是A、B两件事件的
先后,而是有两个过去时间的“先、后”关系。
首先,句子中有个明确的过去时间点:12岁。说他“12岁”,显然是过去式。那么,紧接
着说“他已经开始谋生了”,这个“谋生”是发生在“12岁”时,还是“12岁”前,还是
“12岁”后?答案是肯定的:他的“谋生”发生在“12岁”之前!也就是说,“12岁”已
经是一般过去时,而在“12岁”之前发生的事,当然是过去完成时。所以,在那么多表示
时间状语的词中,大家要特别注意By、Until等的用法。
可以说,在讲述过去的事件中,如果出现By„„时间状语,很有可能要用过去完成时了。
(当然,我说的是很有可能。)类似的时间表达方式还有Until、Before等。只要大家把握了
过去完成时的基本含义,不管句子怎么变化,应该没有多大的问题。例如:[例2]
Untilthen,hisfamilyhadn'theardfromhimforsixmonth.
此句的分析同上面差不多。首先有个明确的过去时间点"then"(那时),而"hadn'theard"发生
在then之前(包括then)。所以此句用的是过去完成时。
再举两个例子,请大家自己分析:
[例3]Wehadlearnedabout4000Englishwordsbytheendoflastterm.
[例4]Iwaiteduntilhehadfinishedhishomework.
[例5]Wehadgottothestationbefore10:00.