一:cancould +have done 1:在肯定句中表示:本来可以做,但是实际上没有做,是虚拟语气的一种。 You could have done better, but you didn’t try your best. 2:在否定句中表示:对过去的行为的推测 He can’t have been to that town. 3:在疑问句中表示:对过去行为的推测 Can he have got the prize? 二: maymight+ have done 表示对过去行为的推测,一定,想必。 He may not have finished the work. If we had taken the other road, we might have already arrived there. 三:must+ have done 用于肯定句,表示对过去行为的推测,意思,想必,一定 You must have seen the film . 否定形式为:can’t 四:should(ought to ) + have done 用于肯定句,表示对过去行为的推测,表示本应该做而实际上没有做。 用于否定句,表示本来不该做而去做了 You should have helped me .(本来应该帮忙,但是没有帮) You shouldn’t have made such mistakes .(本来不应该犯这样的错,但是却犯了) 五:needn’t + have done 表示本来不必做,却做了某事 You needn’t have watered the flowers, because it is going to rain. 六:will+ have done 用于第二三人称,表示对已经发生的事情的推测 He will arrived at home by now. 八、 情态动词+不定式完成式(have done) 1) can / could + have done在肯定句中表示“本来可以做而实际上能做某事”,是虚拟语气;在疑问句或否定句中表示对过去行为的怀疑或不肯定, 表示推测。 1. You could have done better, but you didn’t try your best. (虚拟语气) 2. He can’t have been to that town.(推测) 3. Can he have got the book?(推测) 2) may / might +不定式完成式(have done) 表示对过去行为的推测。不能用于疑问句中,没有虚拟语气的用法。Might所表示的可能性比may小。 1. He may not have finished the work . 2. If we had taken the other road, we might have arrived earlier. 3)must +不定式完成式(have done) 用于肯定句中,表示对过去行为的推测。意为“一定、想必”。其疑问、否定形式用can,can’t代替。参看1) can / could + have done表示推测。 1. You must have seen the film Titanic. 2. He must have been to Shanghai. 4)should +不定式完成式(have done) 用于肯定句中,表示对过去行为的推测。 He should have finished the work by now。 表示“本应该做而实际上没有做某事”,其否定式表示某种行为本不该发生却发生了。可以与ought to +不定式完成式(have done)互换。 1. You ought to / should have helped him. (but you didn’t.) 2. She shouldn’t have taken away my measuring tape, for I wanted to use it. 5) needn’t +不定式完成式(have done) 表示“本来不必做而实际上做了某事”。 You needn’t have watered the flowers, for it is going to rain. 6) will +不定式完成式(have done) 主要用于第二、三人称,表示对已完成的动作或事态的推测。 |
|