现在完成时是英语语法中的一个重要概念,它用来表达在过去某个时间开始并延续到现在,或者在过去完成但对现在仍有影响的动作或状态。这个时态由助动词“have”或“has”加上动词的过去分词构成。在第三人称单数主语中,助动词用“has”,其他则用“have”。
现在完成时的否定形式是在助动词“have”或“has”后加“not”。例如,对于动词“study”,否定式为“I have not studied”或“I haven't studied”,对于第二人称和复数主语则是“You have not studied”或“You haven't studied”,第三人称单数则是“He/She/It has not studied”或“He/She/It hasn't studied”。疑问式则是将助动词移到句首,如“Have I studied?”、“Have you studied?”、“Has he studied?”。否定疑问式的简单回答形式分别为:“Yes, you have.”、“No, you haven't.”、“Yes, I have.”、“No, I haven't.”和“Yes, he has.”、“No, he hasn't.”。
现在完成时有以下两种主要用法:
1. 表示在说话之前已完成的动作或存在的状态,强调的是这些动作或状态对当前的影响。例如:“My daughter has just gone out.”和“I'm sure we’ve met before.”。
2. 表示一个持续到现在的动作或状态,常常与表示一段时间的状语如“recently”、“already”、“just”、“lately”、“for…”、“since…”、“yet”等连用。例如:“I haven’t heard from her these days.”和“They have been away for two years.”。
当使用“since”和“for”时,需要注意它们的区别。“Since”后接时间点,如日期、学期、昨天等,而“for”则后接一段持续的时间,如“ten years”、“a while”、“two days”等。在练习中,例如:
1. Jim has been in Ireland since Monday.
2. Jill has been in Ireland for three days.
3. His aunt has lived in Australia for 15 days.
4. Mary is in her office. She has been there since 7 o'clock.
5. India has been an independent country since 1974.
6. The bus is late. They've been waiting for 20 minutes.
7. Nobody lives in those houses. They have been empty for many years.
8. Mike has been ill for a long time. He has been in hospital since October.
短促动词如“arrive”、“leave”、“borrow”、“buy”、“begin”、“start”、“die”等在现在完成时中不能与表示一段时间的状语连用,因为它们表示的动作是瞬间性的。比如,“He has come here for 2 weeks.”这样的表述是不正确的,应改为“He has been here for 2 weeks.”,同样的,对于“die”,我们也不能说“The old man has died for 4 months.”,而是说“The old man has been dead for 4 months.”。
总结来说,现在完成时强调过去发生的事情与现在的关系,它能够有效地描绘出动作或状态的连续性和对现在的影响,是英语表达中不可或缺的一部分。理解并熟练掌握现在完成时的结构和用法,对于提高英语表达的准确性和流利性至关重要。