完成时态has和had的用法什么时候用has什么时候用had
完成时态has和had的用法
什么时候用has什么时候用had
完成时态has和had的用法什么时候用has什么时候用had
完成时态has和had的用法
什么时候用has什么时候用had
去完成时过去完成时的基本概念和形式
过去完成时(pastperfecttense)表示在过去某一时间或动作以前已经完成了的动作.简言之,过去完成时所表示的时间就是“过去的过去”.过去完成时由助动词had+过去分词构成.
过去完成时的用法
1)过去完成时表示在过去某一时间或动作以前业已完成的动作.这个过去的时间可以用by,before等介词短语或一个时间状语从句来表示.如:
Bytheendoflastweekwehadlearnedtenlessons.到上周末为止,我们已经学了十课书.
HehadlearnedsomeEnglishbeforehecametotheinstitute.他来学院之前学过一些英语.
Ididn’tgotothefilmbecauseIhadseenittwice.我没去看电影,因为这片子我已看过两次了.
WhenIhadgoneovermylessonsItookarest.我复习完功课之后,休息了一会儿.
IgavemylittlesistertheflowersthatIhadboughtforher.我把给妹妹买的花送给她.
Intheexhibitionhesawmanyoilpaintingsthathehadneverseenbefore.他在展览厅里见到许多过去从未见过的油画.
2)过去完成时可以表示由过去某一时间开始,一直延续到过去另一时间的动作,常和for(有时可以省去)或since构成的短语或since引导的从句连用.如:
Itrainedyesterdayafterithadbeendryformanymonths.在天旱了好几个月之后,昨天下雨了.
BytheIreadhisnewbook,Ihadknownhimforalongtime.到我读他的新书时,我早就知道他了.
HesaidthatgreatChangeshadtakenplaceinhishometownsince,1980.他说7980年以来他的家乡大变样了.
[注]当一个由when,before,after,assoonas等连词引导的从句所表示的动作和主句的动作紧接时,两个动作均可用“一般过去时”来表示.如:
Wehadbreakfastafterwedidmorningexercises.做完早操后,我们吃早饭.
WhenIfinishedsupper,Itookawalk.我晚饭后就去散步.
Thetrainstartedtomovejustbeforehereachedtheplatform.他到月台时火车刚开走.
Theystartedploughingassoonastheygottothefields.他们一到地里就开始耕地.
将来完成时的基本概念和形式
将来完成时(futureperfecttense)表示在将来某一时间之前所完成的动作.它的形式由shall(第一人称)或will(第二、三人称)加have再加过去分词所构成.美国英语一律用will.
将来完成时的用法
将来完成时表示在将来某一时间以前已经完成的动作.如:
Bytheendofthisweek,Ishallhavefinishedthebook.到本周末,我将读完这本书.
Bythistimetomorrowtheywillhaverepairedthemachine.明天这时候,他们将修好这台机器.
ThechildrenwillhavegonetosleepbythetimeWegethome.到我们回家时,孩子们将已睡了.
Whenyoucometonightateighto'clock,Ishallhavewrittenmypaper.你今晚八点钟来时,我将会写完文章了.
BynextyearourteacherwillhavetaughtEnglishfortwentyyears.到明年我们的老师将已教二十年英语了.
[英语语法手册]完成进行时态
过去将来完成时
过去将来完成时(pastfutureperfecttense)表示在过去将来某一时间以前已经完成的动作.它的形式由should(第一人称)或Would(第二、三人称)加have再加过去分词构成.美国英语一律用Would.
用法举例:
Hesaidhewouldhavepaidmebackthemoneybytheendoftheweek.他说将在周末前还我钱.
Wetoldhimthatweshouldhavereturnedtothecampbyfouro'clock.我们告诉他我们将于四点前回营地.
IhopedshewouldhavefinishedtheworkbeforeIgotback.我希望她在我回来之前做完那活儿.
种类
完成进行时有现在完成进行时、过去完成进行时、将来完成进行时和过去将来完成进行时四种.
现在完成进行时的用法
1)表示动作从过去某一时间开始一直延续到现在.现在这个动作可能已经终止,也可能仍然在进行着.如:
Ihavebeenwaitingforyoufortwohours.我等了你两个小刊(动作不再延续下去)
Ithasbeenrainingforthreehours.雨已经下了三小时了.(动作可能延续)
Hehasbeenworkingonthepaperallday.他整天都在写论文(动作是否延续下去,由上下文决定.)
HowlonghaveyoubeenlearningEnglish?——IhavebeenlearningEnglishfortwoyears.你英语学多久了?——我们学了两年了.(动作可能延续)
Whyareyousodirty-I'vebeenplayingfootball.你身上怎么这样脏?——我刚才踢足球了.(动作不再延续下去)
2)有些不能用现在进行时态的动词,如be,havelike,love,know,see,hesr等,同样也不能用现在完成进行时,而只能用现在完成时.如:
Shehasbeenillforalongtime.她已经病了好久了.
Ihavenotseenyouforages.我好久没有见到你了.