情态动词+have done用法归纳高中
用法1.could have done可以表示过去本来能够做某事而实际上没有做。
2.must have done表示对过去已经发生过的情况的肯定推测,语气较强。
3.may / might have done表示对已经发生过的情况的肯定推测,语气稍弱。might have done还可表示本可能做某事而实际上没有做。
4.should / ought to have done表示“本该做某事而实际上没有做”,其否定形式表示“本不该做某事而实际上做了”,通常含有责备的意思。如
The flowers have died. I should / ought to have watered them often.
You shouldn\'t / ought not to have told them the truth.
5.needn\'t have done表示“本不必做某事而实际上做了”。如
It is warm today. You needn\'t have worn your coat.
注意didn\'t need to do与needn\'t have done都表示“过去不必做某事”,但didn\'t need to do通常表示“没必要做,实际上也没做某事”,而needn\'t have done则表示“虽然没必要做,但已经做了某事”。如
He didn\'t need to get up early on Sunday, so he stayed in bed until 10 am.