..

现在完成时与一般过去时

现在完成时与一般过去时是英语中用法极为灵活的两种时态,它们属于不同时间的两种时态:

  • 现在完成时属于现在时态的范畴
  • 一般过去时属于过去时态的范畴

1-构成形式不同

现在完成时的动词形式为:have (has) + 动词的过去分词;一般过去时的动词形式为:动词的过去式

  • 一般过去时:Jack’s mother took him to school every day when he was in primary school.
  • 现在完成时:Maria has never read any Chinese stories.

2-强调对象不同

现在完成时:

  1. 用来表示之前已发生或完成的动作或状态,其结果和现在有联系,现在完成时的动作或状态发生在过去,但它的影响现在还存在
  2. 强调过去的事情对现在的影响,强调的是影响

一般过去时:

  1. 表示过去的事实,不表示和现在的关系。
  2. 表示过去某时发生的动作或单纯叙述过去的事情,强调动作

示例:

  • Yesterday I went to the zoo.(仅说明昨天去了动物园,与现在无关)
  • Li Lei has read the book.(强调对现在的影响,那本书的内容已经了解)
  • Mr Green bought a new computer yesterday.(强调的是格林先生买新电脑的时间是昨天)
  • Mr Green has bought a new computer.(重点是格林先生现在有了一台新电脑)
  • I saw the film three days ago.(强调是三天前,而不是别的什么时候看的电影)
  • I have seen the film.(现在我仍记得电影的内容)

3-时间状语不同

一般过去时常与 具体的时间状语 连用,而现在完成时通常与 模糊的时间状语 连用,或 无时间状语

一般过去时:

  1. Yesterday, Last week / month / year / night/ Monday, yesterday morning / afternoon / evening, just now = a moment ago, …ago, the day before yesterday, in +(已过去的)某年/ 月, on +(已过去的)某天, at +(已过去的)几点钟

现在完成时:

  1. 可以和带有 since 或 for 等表示一段时间的状语 连用, 表示动作或状态从某一时刻开始,一直持续到现在。

    在与 for 及 since 引导的一段时间状语连用时,句子的谓语动词必须是延续性动词,短暂性动词不可和一段时间连用。

    • He has become a soldier for three years.(wrong)
    • He has been a soldier for three years. (right)
  2. 往往与表示不确定的过去时间状语连用,如 already(肯定句中),yet(否定,疑问,句末),just, before, recently, still, lately, never
    • He has already obtained a scholarship.
    • I haven’t seen much of him recently (lately).
    • We have seen that film before.
  3. 经常与表示频率的时间状语连用,如:often, sometimes, ever, never, twice, on several occasion 等.
    • Have you ever been to Beijing?
    • I have never heard Bunny say anything against her.
    • George has met that gentleman on several occasions.
  4. 如果上述关键词都没有出现的话,就看是描述一个过去的事实或动作,还是表示强调已经完成了的事件对现在产生的影响。