2)may(might)have+过去分词
A.表示对过去情况的推测,意为,“可能已做某事”。
He may have heard the news.
I might have come to a wrong conclusion.
B.表示一种未实现的可能性,即本可以做某事,而实际上并没有做,有时含有抱怨的口吻。
It was a narrow escape.You might have killed yourself.
A lot of men died who might have been saved.
3)must have+过去分词
表示逻辑上的必然性,即按照某些现象推断过去肯定发生过的某事。
She must have made a big mistake.
The city at one time must have been prosperous,for it enjoyed a high level of civilization.
4)needn’t have+过去分词
表示过去不必做某事,但已经做了,即本可不必做某事。
You needn’t have woken me up.I don’t have to go to work today.
He needn’t have watered the flowers,for it is going to rain.
5)should/ought to have+过去分词
表示过去应该做某事而实际上没有做。
You should/ought to have done what your parents told you.(But you failed to do it.)
You should/ought to have been more careful.(But you weren’t.)
6)shouldn’t/oughtn’t to have+过去分词
表示过去不应该做某事而实际上却做了。
You shouldn’t/oughtn’t to have crossed the road when the lights were red.(But you did.)
They shouldn’t/oughtn’t to have left so soon.(But they did.)
7)would have+过去分词
表示对现在或将来某时之前业已完成的动作的推测。可译为,“可能”、“也许”、“想必”。
He would have arrived by now.
She would have recovered by then.