3.7 现在完成时
3.7.1 含义
现在完成时用来表示现在之前已发生或完成的动作或状态,但其结果却和现在有联系, 也就是说, 动作或状态发生在过去但它的影响现在还存在。
I have lost my wallet. (含义是:现在我没有钱花了。)
Jane has laid the table.(含义是:已可以吃饭了。)
Michael has been ill.(含义是:现在仍然很虚弱。)
He has returned from abroad. (含义是:现在已在此地)
3.7.2 结构
助动词have /has+动词过去分词,主语为第三人称单数用has,其他人称用have 。
3.7.3 句型
1)肯定句:主语+have /has+动词过去分词+其他。
I have studied English for 5 years.
我学了5年英语。
2)否定句:主语+have /has+not +动词过去分词+其他。
We haven’t been there.
我们没有去过那里。
3)一般疑问句:Have/Has+主语+动词过去分词+其他?
Has he eaten that apple ?
他吃过那个苹果了吗?
4)特殊疑问句:特殊疑问词+ have /has +主语+动词过去分词+其他?
3.7.4 用法
1)现在完成时可以用来表示发生在过去某一时刻的、持续到现在的情况,常与for, since连用。
Mary has been ill for three days.
玛丽病了三天。
I have lived here since 1998.
我1998年以来就住在这里。
2)现在完成时往往同表示不确定的过去时间状语连用, 如already, yet, just, before, recently, lately等:
He has already obtained a scholarship.
他已获得奖学金。
I haven’t seen much of him recently (lately).
我近来(最近)没怎么见过他。
We have seen that film before.
我们之前看过那部电影。
Have they found the missing child yet?
他们找到了失踪孩子吗?
3)现在完成时常常与表示频度的时间状语连用,如often, sometimes, ever, never, twice, on several occasion等:
Have you ever been to Beijing?
你去过北京吗?
I have never heard Bunny say anything against her.
我从来没有听过Bunny说过她什么坏话。
I have used this pen only three times. It is still good.
我只使用过这支笔三次。它仍然很好用。
George has met that gentleman on several occasions.
乔治曾多次见过那位先生。
4)现在完成时还往往可以同包括现在时间在内的时间状语连用,如now, up to these few days/weeks/months/years, this morning/week/month/year, now, just, today, up to present, so far等。
Peter has written six papers so far.
彼得迄今已写了六篇论文。
Man has now learned to release energy from the nucleus of the atom.
人类现在已经学会从原子核中释放能量。
There has bee too much rain this year.
今年下雨太多了。
The relations between us have been enhanced in the past few years.
过去几年来,我们之间的关系得到了加强。
Up to the present everything has been successful.
到目前为止,一切都取得了成功。
5)现在完成时表示现在之前就已完成的动作, 虽然其效果或影响仍然存在但已不再继续, 但是有一些现在完成时的句子,在后面加上for+一段时间,则现在完成时的动作就表示延续性。 e.g. Thomas has studied Russian. (现在不再学俄语)
Thomas has studied Russian for three years. (=Thomas began to study Russian three years ago, and is still studying it now.)
6)现在完成时还可以用来表示过去的一个时间到现在这段时间内重复发生的动作。
We have had four tests this semester.
这个学期我们有过四次考试。
现在完成时中的时间状语:
(1)already通常用于肯定句中,意为―已经‖,位于行为动词之前, be动词、助动词之后。有时可放在疑问句句尾,表示惊讶。例如:
We have already cleaned the classroom. 我们已经打扫了教室。
Have you finished it already?你已经完成了吗?
(2)yet用于疑问句中表示―已经‖;用于否定句中,表示―还(没)‖。例如:
—Has he found his watch yet?他还没找到他的表吗?
—No, not yet. 是, 还没有。
(3)ever意为―曾经‖,常用于疑问句或否定句中,位于助动词和过去分词之间,表示从过去到目前为止的时间。例如:
Have you ever been there?你曾经去过那里吗?
Nothing has ever happened here. 这里未曾发生过什么事。
(4)never意为―(曾经)从未、没有‖, 是否定副词,在句中位于助动词和过去分词之间。ever与否定词not连用相当于never。例如:
I haven’t ever spoken to her. = I have never spoken to her. 我从未跟她讲过话。
(5)just意为刚刚, 用于现在完成时, 表示行为刚刚过去, 位于助动词与过去分词之间。
He has just come back from school. 他刚从学校回来。
(6)just now意为―刚才‖, 表示过去某时, 用于一般过去时, 位于句首或句尾均可。
He came from school just now. 他刚才从学校回来。
(7)for 和since的用法及区别。for 与一段时间连用,since 与时间点连用。
注意:since 后接过去时的时间状语或过去时的句子。
I have been to Shanghai twice since 1970. 自1970年以来,我两次去过上海。
I haven’t seen her since she left Shanghai. 自从她离开上海后我从未见到她。
(8)have/has gone to、have/has been to 和have/has been in的区别。
have/ has gone to 去了,在去某地的路上或在某地, 人还未回来
have/ has been to 曾经去过, 人已经回来了
have/ has been in 已经在, 常与一段时间连用
e.g. She has been to Shanghai before. 她以前曾去过上海。
She has been in Shanghai for ten years. 她在上海10年了。
Has he gone to Qingdao? 他去青岛了吗?但不能说 Have you gone to Qingdao?