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

问题描述:

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

前一个是现在完成时,后一个是过去完成时
所谓现在完成时是指:到现在为止已经完成了某事。
而过去完成时是指:过去已经完成了某事。
一般句中有 since ......years的,都用现在完成时。
无论使用现在完成还是过去完成,都要先了解某件事到现在已经做了,还是过去已经做了,只有这样才能对诊下药。

一个是现在完成时 一个是过去完成时

一个是现在完成时(表示动作在现在时间之前的完成),一是过去完成时(表示动作在过去的一个时间点之前就已经完成了)

现在完成式(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.
他们所做的事情非常有帮助。