英语语法学习:动词完成时态!
⼀、现在完成时(have done)
1.现在完成时的“已完成”⽤法。表⽰现在已经完成的动作,⽽且这个动作的结果对现在仍有影响。这种⽤法可以不使⽤时间状语。如:
I have been to Beijing. 我去过北京。
I have gone to Beijing. 我去了北京。
显然,have been+地点状语,表⽰去过某地;have gone+地点状语,表⽰去了某地。
2.现在完成时的“未完成”⽤法。表⽰从过去⼀直持续到现在,⽽且还有可能继续下去的动作或状态。这种⽤法通常与表⽰⼀段时间的状语连⽤,所以现在完成时的“未完成”⽤法适⽤于状态动词或者动作动词中的延续性动词,不适⽤于come、go、leave等⾮延续性动词。如:
I have been here for three days. 我来这⼉三天了。此处只能使⽤状态动词be, ⽽不能使⽤⾮延续性动词come.
另外,与现在完成时的“未完成”状态连⽤,表时间段的状语主要有三类:
(1)since+时间点。如:since three years ago 三年以来
真实与虚幻
(2)for+时间段。如:for three years 三年以来
雅威(3)其他表⼀段时间的状语。这种时间状语应当包含现在时间在内,才能和现在完成时的“未完成”状态连⽤。如:in the past few years 在过去的⼏年⾥;so far 直⾄今⽇,迄今为⽌;up to now 到⽬前为⽌;always ⼀直,总是。
3.⽤于时间或条件状语从句中,表⽰将来某时之前已经完成的动作。如:
I will go to school if it has stopped raining by that time. 如果那时⾬已经停了,我就去学校。这个句⼦中的现在完成时结构实际是在表将来完成。
⼆、过去完成时(had done)
1.过去完成时的“已完成”⽤法。如:
The match had started when we came in. 我们进来时,这个⽐赛已经开始了。(“⽐赛开始”这个动作已经完成)
2.过去完成时的“未完成”⽤法。如:
They had known each other before they were classmates. 在成为同学之前,他们就已经认识对⽅了。(“认识”这个动作从过去的过去⼀直持续到过去,仍在继续)
3.表⽰与过去事实相反的虚拟语⽓。这种⽤法主要出现在以下三类从句中:
(1)if引导的条件状语从句。如:
If I had known you were not busy last night, I would have called. 如果知道昨晚你不忙,我就会去拜访你。抽屉拉手
(2)as if、as though引导的⽅式状语从句。如:
They talked as if they had been friends for years. 他们交谈起来就像是多年的朋友⼀样。
(3)wish(希望)、would rather/had rather/would sooner(宁愿)引导的宾语从句。如:
I wish you had been here last night. 昨晚你要是在这⼉多好。
John would rather that he had not gone to the party last night. 约翰宁愿⾃⼰昨晚没有参加那个聚会。
4.有些动词如hope、think、expect、mean、suppose、want、plan、intend等,使⽤过去完成时表⽰
过去未曾实现的希望、想法、打算、意图、计划等,意思是“本希望、本想、本打算、本计划做......”。如:
I had planned to visit the museum. 我本计划去博物馆看看的。
三、将来完成时(will/shall have done)
1.表⽰将来某时已经完成的动作。如:
You will have got the answer by this time tomorrow. 明天这个时候你就已经得到答复了。
2.表⽰对已经完成的动作的推测。如:
You will have read the book. 你或许已经读过这本书。
3.表⽰将来完成进⾏时的被动式。如:
He says they will have been repairing the house for three days by the weekend. 采⽤将来完成时的宾语从句变为被动语态,句⼦如下:雪线的影响因素
He says the house will have been repaired for three days by the weekend. 他说到周末这个房⼦已经
修理三天了。
四、过去将来完成时(would/should have done)
1.⽴⾜于过去,表⽰将来某时之前已经完成的动作。如:
软件技术专业He said we should have arrived there by six. 他说我们6点之前就会到那⼉。
2.表⽰过去将来完成进⾏时的被动式。如:
He said they would have been repairing the house for three days by the weekend. 采⽤过去将来完成进⾏时的宾语从句变为被动语态,句⼦如下:
钱币鉴定
He said the house would have been repaired for three days by the weekend. 他说到周末这个房⼦已经修理三天了。