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

现在完成时和现在完成进行时有何区别?我觉得有时二者都一样请详细解释一下?谢谢!

请先 登录 后评论

最佳答案 2018-01-19 14:52

现在完成进行时和现在完成时的根本区别:

    ①现在完成进行时和现在完成时均可表示“从过去开始一直持续到现在”的动作,但现在完成时表示动作已完成,着重于结果;现在完成进行时表示的动作可能已完成也可能未完成,更强调动作的持续进行。比较:

I have read the book.我读过这本书。(已读完)

I have been reading the book.我一直在读这本书。(还在读,没结束)

    ②一些静态动词多用现在完成进行时,这样的静态动词主要有:lie,stand,sit,wait,rain 等。

She has lain in bed for a week.

She has been lying in bed for a week.(更常见)

她已经卧床一周了。

I have waited for you for two hours.

I have been waiting for you for two hours.(更常见)

我已经等你两小时了。


【现在完成进行时】的几个特点:

    现在完成进行时是现在完成时态与进行时态的结合,既有现在完成时的特点,也有进行时的特点。

    (1)表示一个持续到现在的动作

现在完成进行时,表示动作从过去某一时间开始一直延续到现在,并且有可能持续下去,其结构为have/has been doing sth.。这种时态的句子中多用持续性动词,如:

live,learn,lie,stay,sit,wait,stand,rest,work,study等,并常和all the time,this week,this month,all night,all the morning,recently等状语以及since和for引导的时间状语连用(与since和for连用时,动作常会继续下去)。

    For forty years Jane Goodall has been helping the rest of the world understand and respect the life of these animals.

    40年来,简•古道尔一直帮助世人了解并尊重这些动物的生活。

    He has been doing this in order to repay the boy's kindness.

    为了报答那个男孩的好心,他一直这样做。

    How long have you been living here?你住在这儿多长时间了?

    He has been waiting for his girlfriend for an hour but she still hasn't turned up.

    他已经等了一个小时,可她女朋友还没来。

    (2)表示动作重复

    有时,现在完成进行时所表示的动作并不是一直在不停地进行,而是在断断续续地重复。

    She's been saying that twenty times.那话她已经说了20遍了。

    My grandfather has been losing things all the time.我爷爷一直在丢东西。

    We have been seeing each other recently.我们最近频频见面。

    (3)表示长时间做某事

    在强调长时间做某事时用现在完成进行时。

    I have been expecting my home letter for a long time.

    我在期盼我的家信很长时间了。

    He has been devoting himself to the design for a whole week.

    一周来他一直投身于这个设计。

    (4)表示某种感情色彩

    现在完成进行时有时带有强烈的表扬或厌恶等感情色彩。

    I have been looking forward to seeing my family.我一直期盼着见到我的家人。

    My granny has been warning us of our studies.我奶奶一直在提醒我们学习。


请先 登录 后评论

其它 2 个回答

曹荣禄  
擅长:动词用法,句法问题

只有少数动词如live,work, study, teach, learn, wait, stay等用现在完成时加持续时间状语和现在完成进行时意义差别不大。但对于绝大多数动词而言,二者是不可以混用的。总体而言,现在完成进行时是完成体和进行体的结合,因此,凡是不能用于进行体的动词就不能用完成进行时。因此静态动词通常不用于完成进行时。例如不能说I have been knowing him for many years. 只能说I have known him for many years. 一个动态动词表示的情景如果没有结束就应该用进行时态,如果不用进行体就表示结束意义。因此动态动词的现在完成时表示事件结束于说话时之前,而现在完成进行时表示事件从过去持续到说话时。二者有本质的区别,不可混淆。只有少数动词是例外,记住这些例外。

请先 登录 后评论
陈才   - 英语教师
擅长:中考英语,词法问题

现在完成时和现在完成进行时有何区别?我觉得有时二者都一样请详细解释一下?谢谢!

现在完成时态和现在完成进行式区别如下

(1) 现在完成时可以表示一个已经完成的动作,而现在完成进行时则表示一个从过去到现在一直正在进行的动作。

I have read the book. 

我读过这本书。

I have been reading the book. (表示从过去到现在一直正在进行动作,用现在完成进行时态)

我一直在读这本书。

【备注】有少数动词(如work, study, live, teach, stay等)在表示持续一时间时用这两种时态含义差不多(只是用现在完成进行进更强调动作的持续性)。

How long have you worked /been working here? 

你在这儿工作多久了?

I’ve lived /been living/ here since 1988. 

自1988年以来我就一直住在这儿。

(2) 现在完成时通常只陈述事实,而现在完成进行时还可表示一种感情色彩:

I have waited for two hours. 

我等了两小时。(陈述事实)

I have been waiting for two hours. 

我等了两个小时。(等得好辛苦)

(3) 现在完成进行时通常用来谈论较短暂的动作或情况,若要谈论时间延续较长的动作或情况或永久性情况,则通常用现在完成时:

He has lived in Paris. 

他(一直)住在巴黎。

He has been living in Paris. 

他(目前)住在巴黎。(表暂时性)

(4) 不用于进行时态的动词通常也不用于现在完成进行时,但它们可以用于现在完成时:

I’ve only known her for two day. 

我认识她刚刚两天。

They’ve been married for twenty years. 

他们结婚已二十年了。

The war has lasted for a long time. 

这场战争持续了很长时间。

(5) 现在完成进行时不用于被动语态,若要用可用现在完成时的被动语态代替:

The house has been painted for a month. 

这房子已漆了一个月。

The problem has been studied for five days. 

这个问题已研究了五天。

备注:静态动词现在完成时态代替现在完成进行时态.

(1)现在完成时:He has lived in China for eight years

(2)现在完成进行式:He has been living in China for eight years.


 


请先 登录 后评论
  • 3 关注
  • 10 收藏,15487 浏览
  • 高山 提出于 2017-03-24 16:18

相似问题