情态动词+have done用法透视
作者:杨春萍 更新日期:2007-12-12 点击数: 等级:
“情态动词+have done”也可称为“情态动词+不定式完成体”,此句型既可以用来表示对过去所发生事情的一种推测,也可以用来表达其它含义。它的用法是情态动词语法中的一个难点,又频受历年高考题的青睐。
本文归纳如下:
一、must+have done
该结构用于肯定句中,表示说话人对已经发生的事情或存在的状态进行的一种合乎情理的推断或确有把握的推测,意为“一定是已…”,“准是已经…”,“想必…了”。
He must have completed his work;otherwise,he wouldn’t be enjoying himself by the seaside.(2005北京)
他肯定完成了工作,否则他就不能在海边开心了。
-Guess what!I have got A for my term paper.
-Great!You_______read widely and put a lot of work into it.(2007上海)
A.must B.should
C.must haveD.should have
【解析】答案为C。从对话上来看,此处应该是对过去动作的推测,A和B是对现在或将来的推测,应排除;而D指过去本应该做而未做的事,语境不符。
-She looks very happy.She___________have passed the exam.(2007江苏)
-I guess so It’s not difficult after all.
A.should B.could C.must D.might
【解析】答案为C,因为考试不难,她又看起来很高兴,所以推测语气非常肯定。
The teacher_________have thought Johnson was worth it or she wouldn’t have wasted time on him,I suppose.(2007安徽)
A.shouldB.canC.would D.must
【解析】答案为D。老师一定已经认为Johnson是值得的,我认为,否则她就不会在他身上浪费时间了。
温馨提示:此句型只用于肯定句中,否定结构中常用“can’t have done”(表示“不可能…”)或“may not have done”(表示“可能不…”)
二、can+have done用于否定句和疑问句,表示对过去情况发生的可能性的否定或质疑,意思是“可能已经…了吗?”或者是“不可能/不会已经…的”
My MP4 player isn’t in my bag.Where___________I have put it?(2007福建)
A.canB.mustC.should D.would
【解析】答案为A。这是疑问句,所以排除B选项,另外,should have done意为“本应该…”,所以排除,would have done表示虚拟语气,所以也排除,A的意思为“我可能把它放哪呢?”
Hecan’t have goneto Japan for I saw him at the meeting just now.
他不可能去了日本,因为我刚刚在会上见到他了。
Can he have finished the work so soon?
他会这么快完成这个工作吗?
三、could have done既可以表示虚拟语气又可以表示对过去情况的推测
1、常用来表示过去本来可能或能够做到,但由于某种原因实际上并未做到,意为“本来能够…,本来可以…”,含有责备语气。
-Did you visit the famous museum?
-No,we could have visited but we spent too much time shopping.(虚拟语气)
-你们参观那个著名的博物馆了吗?
-没有,我们本来可以参观的,但我们花太多的时间买东西。
2、用来表示对过去情况的推测
I could not have been more than six years old when the accident happened.(2005天津)
当那次事故发生时,我不可能超过6岁。
That was not a good place for skating.You could have broken your leg.(表示推测)
那不是一个滑冰的好地方,你有可能摔伤腿的。
四、may+have done用于肯定句和否定句,表示对过去情况发生的可能性的不确定推测,意为“可能/也许已经…了”或“可能/也许还没有…”
We______have proved great adventurers,but we have done the greatest march ever made in the past ten years.(2006天津)
A.needn’t [B]may not
C.shouldn’tD.mustn’t
我们或许还没有证明是伟大的探险者,但我们已取得了在过去的10年里的最伟大的进展。
五、might+have done用在肯定句或否定句中。
1.might+have done结构表示推测,“或许已经…”,“可能已经…了”,语气比较委婉,可能性不如may have done大。
-Where is my dictionary?I remember I put it here yesterday.
-You________it in the wrong place.(2007江西)
A.must putB.should have put
C.might putD.might have put
【解析】答案为D。因为此题放的动作是发生在过去,所以排除A、C,而should have done是“本应该”,故也被排除掉。
Sorry,I’m late.I_________have turned
本文归纳如下:
一、must+have done
该结构用于肯定句中,表示说话人对已经发生的事情或存在的状态进行的一种合乎情理的推断或确有把握的推测,意为“一定是已…”,“准是已经…”,“想必…了”。
He must have completed his work;otherwise,he wouldn’t be enjoying himself by the seaside.(2005北京)
他肯定完成了工作,否则他就不能在海边开心了。
-Guess what!I have got A for my term paper.
-Great!You_______read widely and put a lot of work into it.(2007上海)
A.must B.should
C.must haveD.should have
【解析】答案为C。从对话上来看,此处应该是对过去动作的推测,A和B是对现在或将来的推测,应排除;而D指过去本应该做而未做的事,语境不符。
-She looks very happy.She___________have passed the exam.(2007江苏)
-I guess so It’s not difficult after all.
A.should B.could C.must D.might
【解析】答案为C,因为考试不难,她又看起来很高兴,所以推测语气非常肯定。
The teacher_________have thought Johnson was worth it or she wouldn’t have wasted time on him,I suppose.(2007安徽)
A.shouldB.canC.would D.must
【解析】答案为D。老师一定已经认为Johnson是值得的,我认为,否则她就不会在他身上浪费时间了。
温馨提示:此句型只用于肯定句中,否定结构中常用“can’t have done”(表示“不可能…”)或“may not have done”(表示“可能不…”)
二、can+have done用于否定句和疑问句,表示对过去情况发生的可能性的否定或质疑,意思是“可能已经…了吗?”或者是“不可能/不会已经…的”
My MP4 player isn’t in my bag.Where___________I have put it?(2007福建)
A.canB.mustC.should D.would
【解析】答案为A。这是疑问句,所以排除B选项,另外,should have done意为“本应该…”,所以排除,would have done表示虚拟语气,所以也排除,A的意思为“我可能把它放哪呢?”
Hecan’t have goneto Japan for I saw him at the meeting just now.
他不可能去了日本,因为我刚刚在会上见到他了。
Can he have finished the work so soon?
他会这么快完成这个工作吗?
三、could have done既可以表示虚拟语气又可以表示对过去情况的推测
1、常用来表示过去本来可能或能够做到,但由于某种原因实际上并未做到,意为“本来能够…,本来可以…”,含有责备语气。
-Did you visit the famous museum?
-No,we could have visited but we spent too much time shopping.(虚拟语气)
-你们参观那个著名的博物馆了吗?
-没有,我们本来可以参观的,但我们花太多的时间买东西。
2、用来表示对过去情况的推测
I could not have been more than six years old when the accident happened.(2005天津)
当那次事故发生时,我不可能超过6岁。
That was not a good place for skating.You could have broken your leg.(表示推测)
那不是一个滑冰的好地方,你有可能摔伤腿的。
四、may+have done用于肯定句和否定句,表示对过去情况发生的可能性的不确定推测,意为“可能/也许已经…了”或“可能/也许还没有…”
We______have proved great adventurers,but we have done the greatest march ever made in the past ten years.(2006天津)
A.needn’t [B]may not
C.shouldn’tD.mustn’t
我们或许还没有证明是伟大的探险者,但我们已取得了在过去的10年里的最伟大的进展。
五、might+have done用在肯定句或否定句中。
1.might+have done结构表示推测,“或许已经…”,“可能已经…了”,语气比较委婉,可能性不如may have done大。
-Where is my dictionary?I remember I put it here yesterday.
-You________it in the wrong place.(2007江西)
A.must putB.should have put
C.might putD.might have put
【解析】答案为D。因为此题放的动作是发生在过去,所以排除A、C,而should have done是“本应该”,故也被排除掉。
Sorry,I’m late.I_________have turned




您现在的位置: 