have done与had done是什么时态,有什么不同?

.

一个是现在完成时(表示动作在现在时间之前的完成),一是过去完成时(表示动作在过去的一个时间点之前就已经完成了)
温馨提示:答案为网友推荐,仅供参考
第1个回答  2008-12-06
现在完成式(have done)是对过去已经发生的事情表示猜测。
They have done their work very ably.
他们胜任愉快地做完了工作.
We should have done it sooner.
我们早就该取下来的。
had done过去完成时

if从句使用过去完成时(had done),主句使用过去将来完成时(would have done),表示对过去情况的假设,是虚拟语气的一种用法。

...的愿望;如果指现在或将来的愿望,从句的动词用过去式(did);如果指过去没有实现或不可能实现的愿望,从句用过去完成式(had done);主句中的时态不影响从句动词的虚拟语气形式。
He knew that he had done wrong.
他知道自己做错了。
What they had done helped a lot.
他们所做的事情非常有帮助。
第2个回答  2008-12-07
前一个是现在完成时,后一个是过去完成时
所谓现在完成时是指:到现在为止已经完成了某事。
而过去完成时是指:过去已经完成了某事。
一般句中有 since ......years的,都用现在完成时。
无论使用现在完成还是过去完成,都要先了解某件事到现在已经做了,还是过去已经做了,只有这样才能对诊下药。
第3个回答  2008-12-06
一个是现在完成时 一个是过去完成时