情态动词+have done的用法

文/叶丹

should、would、could、need加have done时,肯定形式下的意思,都是情态动词的本意,加上还没做的事;否定形式下的意思,都是情态动词的本意,加上已经做了的事。

情态动词+have done的用法

情态动词+have+done

一、“must+have+done”表示对过去事情的肯定推测,译成“一定做过某事”,该结构只用于肯定句.

You must have been mad to speak to theservant.你和仆人说话,一定是发疯了.

二、“can't+have+done”表示对过去事情的否定推测,译成“不可能做过某事”.

Mary can't have stolen your money.She hasgone home.玛丽不可能偷你的钱,她回家去了.

三、“can+have+done”表示对过去行为的怀疑,用于疑问句,译成“可能做过……吗?”

There is no light in the room.Can theyhave gone out?屋里没有灯,他们可能出去了吗?

四、“could+have+done”是虚拟语气,表示对过去事情的假设,意思是本来能够做某事而没有做.

He could have passed the exam,but he wastoo careless.本来他能够通过考试,但是他太粗心.

五、“may+have+done”表示对发生过的事情的推测,意思是“可能已经”或“也许已经”,用于肯定句中.

—What has happened to George?

—I don't know.He may have got lost.

—乔治发生了什么事?

——我不知道,他可能迷路了.

六、“might+have+done”表示对过去事情的推测,might与may意思相同,但可能性更小.多用于虚拟语气结构中.

He might have given you more help,eventhough he was busy.他或许会多给你一些帮助,即使他很忙.

七、“would+have+done”虚拟语气,表示对过去事情的假设,意思是“本来会做”.

Without your help,I wouldn't haveachieved so much.没有你的帮助,我是不会取得如此大的成绩.

八、“should+have+done”意思是“本来应该做某事,而实际没做.”“shouldn't+have+done”表示本来不应该做某事,而实际做了.含有指责对方或自责的含意.

Look,Tom is crying.I shouldn't have beenso harsh on him.看,汤姆哭了,我本来不应该对他如此严厉.

九、“ought to+have+done”表示过去应该做而实际并没有做,译成“理应做……”,往往表示遗憾.与“should+have+done”用法基本一样.

I ought to have gone home last Sunday.我理应上星期日回家.

十、“need+have+done”表示本来需要做某事而没有做.“needn't+have+done”则表示“本来不需要做某事而做了”.

I needn't have bought so much wine—only fivepeople came.我本来没有必要买这么多酒,只来了五个人.