现在完成时和过去完成进行时的区别

如题所述

现在完成进行时(The present perfect progressive) 由have/has been +-ing分词构成;过去完成进行时(The past perfect progressive tenses)由had been +-ing分词构成.

现在/过去完成进行时的用法:

A.在某段时间内一直进行的动作

用现在完成进行时来强调动作在某段时间里的持续性.动作通常有”现在”的结果,要根据上下文来确定到”现在”为止,动作是否还在继续进行.例如:

She's been typing letters all day.

I've been sitting in the garden for an hour.

We've been living here for ten years.

Who's been eating my dinner?

同样,过去完成进行时表示在过去更早的时间内进行的动作,并对过去某一时刻产生结果.例如:

When I first met Ann, she had been working for Exxon for 7 years.

When she arrived I had been waiting for three hours.

I realized that I'd been overworking, so I decided to take a couple of days' holiday.

It had been raining for 3 hours before I shut the window.

"持续性动词"可用一般时形式,也可用进行时形式,唯一的区别是进行时更强调动作的持续性.例如:

We've been living here for ten years.

We've lived here for ten years.

She'd been working for Exxon for 7 years.

She had worked for Exxon for 7 years.

I had been waiting for three hours.

I had waited for three hours.

B.表示重复动作的现在/过去完成进行时

我们可以用完成进行时形式来表示现在或过去经常重复的动作.例如:

Jim has been phoning Jenny every night for the last week.
温馨提示:答案为网友推荐,仅供参考
相似回答