解读“情态动词+have done”结构
2016-11-08安徽省怀远一中王玉峰
安徽省怀远一中 王玉峰
解读“情态动词+have done”结构
安徽省怀远一中王玉峰
请同学们先看下面教材里的典型句子,认真体会斜体部分的用法:
1.In the past,if someone like me had failed to get into university through the college exam,he would have had no chance of getting a degree.(北师大版教材模块五Unit15 Lesson1 P36)
2.I know that I wasn't a willing student and I shouldn't have been so difficult at school,but it was probably because I lacked confidence in myself.(北师大版教材模块五Unit15 Lesson3 P40)
3.It was a dilemma because the footballer could have demanded damages if we were wrong.(人教课标版教材模块五Unit4 P26)
从上述三个句子可以看出“情态动词+have done”结构既可以用来表示与过去事实相反的情况,也可以表示对已经发生的事情的推测、责怪、后悔、遗憾等。要注意每一个情态动词都含有相应的说话者的语气,所以我们既要了解每个情态动词的基本用法,又要体会说话者的语气。接下来我们逐个解析。
一、表示推测的“情态动词+have done”
(一)must have done
情态动词must+have done只用于肯定句中,表示对过去发生的事情或状态进行肯定的推测,意为“过去一定做过某事”。如:
It must have rained last night,for the road is all wet.
昨天晚上一定是下雨了,因为路还湿着。
【例】—Hurry up,Michael!It's ten to three.
—Goodness me!The class_______have begun.I'll be late again.
【答案与解析】must。从Goodness me!“天哪”的惊呼可以看出对开始上课的肯定推测,推测上课的动作必定已经发生。句意是:肯定开始上课了。
(二)can't/couldn't have done
表示对过去发生的事情或状态的否定的推测,用can't have done/couldn't have done,意为“过去不可能做过,肯定没做过”,与must have done正好相反。can/could表示推测也可以用在疑问句中。如:
I can't remember when we went to Beijing but could it have been sometime last autumn?
我不记得我们什么时候去过北京,会不会是去年秋天的某个时候?
【例】—Where can Margaret have put the empty bottles?
—She can't_______(throw)them away.They must be somewhere.
【答案与解析】have thrown。根据问句的can have put看出是对过去的事实进行推测,所以答句的否定句是can't have done结构。
(三)may/might+have done
情态动词may/might+have done表示对已发生的动作或存在的状态进行不确定的推测,might语气稍弱一点儿,只能用于肯定句和否定句中,表示“过去可能做过某事或过去可能没做过某事”。如:
You might/may(not)have read about it in the newspapers.
你可能在报上已经看过(还没有看过)这个消息。
【例】—I left my handbag on the train,but luckily someone gave it to a railway official.(改编自2011年江苏卷)
—How unbelievable to get it back!I mean,someone might_______(steal)it.
【答案与解析】have stolen。根据包都找回来了,看出推测某人把包偷去的可能性显得就很小了,根据gave看出所推测的steal动作应该发生在过去,所以用might have done结构。
二、表示与事实情况相反的“情态动词+have done”
(一)should/shouldn't(ought to/oughtn't to)have done
表示过去应该做而(实际)没有做的事情,含有责备或遗憾的语气,意为“本应该……”;其否定形式为“should not have done/ought not to have done”,表示某种行为不该发生却发生了。如:
You should have known better than to go mountain climbing alone.
你本来不该笨得单独去爬山。
You oughtn't to have crossed the road when the lights were red.
你不该在红灯时过马路。
【例】—I'm sorry for being late.I______(shall phone)you earlier.(改编自2012年陕西卷)
—That's all right.I've just arrived.
【答案与解析】should have phoned。根据前句的道歉和earlier可知phone本来该早点发生的,用should have done结构表示自责。
【例】He oughtn't_______(tell)me your secret,but he meant no harm.
【答案与解析】to have told。根据后面的过去式谓语动词meant可知tell动作应该已经发生,再根据转折词but可以看出是“本来不该告诉”的意思,情态动词ought后跟不定式to,所以用to have told。
(二)could have done
could have done表示“过去本来能够做某事,但实际上没有做”。如:
He could have passed the exam,but he was too careless.
本来他能够通过考试,但是他太粗心。
【例】Jerrydidnotregretgivingthecommentbutfeltthathe______(canexpress)itdifferently.
【答案与解析】could have expressed。根据前一分句的过去式谓语动词和转折词but看出是“本来可以用不同的方式表达”,用could have done结构。
(三)needn't have done
表示过去没有必要做某事,但实际上做了某事。注意情态动词need不用于肯定句,仅用于疑问句和否定句。如:
I needn't have bought so much wine—only five people came.
我本来没有必要买这么多酒,只来了五个人。
【例】The weather turned out to be fine yesterday.I needn't_______(take)the trouble tocarry my umbrella with me.
【答案与解析】have taken。根据yesterday和fine的提示看出是“本来没有必要带伞”,事实上昨天却带了伞,用needn't have done结构。
【例】 I needn't_______(worry)before I came to the new school,for my classmates here are very friendly to me.(改编自2015年天津卷)
【答案与解析】have worried。根据for的解释“在这里我的同学对我非常友好”看出担心是没有必要的,现在不担心了,所以用needn't have done表示本来没有必要做某事。
(四)daren't have done
情态动词dare用于疑问句或者否定句中,不用于肯定句,该结构表示“过去不敢做某事”。
He daren't have left without your permission.当时没有你的许可我是不敢离开的。
三、“情态动词+have done”用于虚拟语气
用于虚拟语气中的情态动词用其过去式形式,不定式用其完成时表示过去。在主从复合句中,该结构用于主句中。意思是“本来……,事实上却……”。如:
【例】—If the traffic hadn't been so heavy,I_______(can be)back by 6 o'clock.
—What a pity!Tina was here to see you.
【答案与解析】could have been。if从句hadn't been是表示与过去事实相反的虚拟语气,根据括号提示从句用could have done。句意:我本来6点之前能够回来的,可是交通太拥堵了。
【例】If I hadn't seen it with my own eyes,I_______(will not believe)it.
【答案与解析】wouldn't have believed。根据前半句If I hadn't seen...可以判断是对过去的虚拟。所以主句是wouldn't have done的形式。句意:如果不是我亲眼看到,我不会相信。
【例】It_______(may save)me some trouble had I known the schedule.
【答案与解析】might have saved。if虚拟条件句中含有had时,可将if省去,同时将had提前构成部分倒装结构,由此可以看出是表示与过去事实相反的虚拟语气。所以主句用might have done结构。句意是:如果我早知道日程安排,可能会省去我一些麻烦。
【例】—Sorry,Mum!I failed the job interview again.
—Oh,it's too bad.You(shall make)full preparations.
【答案与解析】should have made。根据前句“又一次面试没有通过”看出母亲说的是“你应该做好充分准备的”,表示母亲的责怪,用should have done结构。