1、表示的时态有区别
have+过去分词是现在完成时;而had +过去分词表示的是过去完成时
2、两者的用法不同
现在完成时have+过去分词表示动作发生在过去,侧重于对现在产生的结果或造成的影响,与现在有关。
例句: I have finished my homework.
我已经做完作业了
过去完成时had +过去分词则是一个相对的时态,表示的动作不仅发生在过去,而且是过去的过去,只有和过去某时或某动作相比较时才用到它。
例句: I had finished my homework by 10:00 this morning.
早上十点的时候我已经写完作业了
3、比较
I have learned 1000 English words so far.到目前为止我已经学会了 1000 个英语单词.
I had learned 1000 English words till then.到那时为止我已经学会了 1000 个英语单词.
— I'm sorry to keep you waiting.对不起,让你久等了.
— Oh,not at all.I have been here only a few minutes.没什么,我只等了几分钟.
扩展资料
过去完成时基本用法
(1)表示在过去某一时刻或动作以前完成了的动作,也可以说过去的时间关于过去的动作。即“过去的过去”。可以用by,before等介词短语或一个时间状语从句来表示,也可以用一个表示过去的动作来表示,还可能通过上下文来表示。
例如:By nine o’clock last night,we had got 200 pictures from the spaceship.
到昨晚9点钟,我们已经收到200张飞船发来的图片。
(2)表示由过去的某一时刻开始,一直延续到过去另一时间的动作或状态,常和for,since构成的时间状语连用。
如:I had been at the bus stop for 20 minutes when a bus finally came.
当车来的时候,我在车站已等了20分钟。
He said he had worked in that factory since 1949.
他说自从1949年以来他就在那家工厂工作。
(3)叙述过去发生的事情,在已叙述了过去发生的事情后,反过来追述或补述以前发生的动作时,常使用过去完成时。
如:Mr.Smith died yesterday.He had been a good friend of mine.
史密斯先生昨天去世了。他以前是我的好友。