have与had的用法区别?

如题所述

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.

史密斯先生昨天去世了。他以前是我的好友。

温馨提示:答案为网友推荐,仅供参考
相似回答