have been doing与 have done的用法区别

问题如题.还有一例句:这个问题许多年来使专家们迷惑不解.The problem has bothered the specialists for many years.
为什麽不用has been bothering呢?

现在完成进行时1)从过去开始持续到现在并还可能持续下去2)现在看出明显结果
现在进行时1)此时此刻正在进行的动作2)现阶段经常发生的动作
现在完成时:1)过去发生的动作对现在造成的影响2)从过去一直持续到现在

下面是例子
最近和一个朋友喝咖啡,我们聊到了英语语言的学习问题。我告诉她,对中国学生来说,学英语最大的难点就是复杂的时态变化。英语时态变来变去,搞得我们晕头转向。她则无辜地笑道:“Tense would make me tense if I were a Chinese student.”(我要是中国学生,时态一定也会让我疯掉的。)

产生这种难题的原因很简单,就是因为两种语言思维表达重大差异造成的。汉语是不太重视时间表达的,对于中国学生来说,3时4态的英语精确时间表达很难进入我们的思维。思维里既然没有时间概念,所以在用英语表达时,我们不是结结巴巴老在琢磨该用什么时态,就是撇开时态不顾,一律用一般现在时。

其实,对于“老外”来说,时态已融入他们的思维,他们不需要知道像“现在完成时”、“现在完成进行时”等这样的语法术语,而是能够潜意识地知道用什么样的动词时态形式来表示什么样的时间概念。比如,我当时就问我的这位朋友,我可不可以这样说:

(1) I have been drinking five cups of coffee this afternoon.

今天下午我一直喝了五杯咖啡。

她给我的回答是“No way”(不可能这样讲)。我问她为什么,她则很茫然地摇摇头说“I don’t know.”这个问题其实涉及到现在完成时与现在完成进行时的区别问题。

要想很好地区分have done和have been doing,我们需要从两个方面来讨论:一、完成时态和完成进行时态本身意义的差别;二、要结合动词的不同延续特点。首先我们来看两种时态的意义差别,两者根本区别是:完成进行时强调动作持续的过程(emphasis on duration),完成时强调动作的结果或成就(emphasis on achievement)。具体来讲,现在完成进行时have been doing强调的是在一段时期内某项活动的持续性,强调的是动作本身。现在完成时have done则是强调动作产生的结果或取得的成就,而不是动作本身。二者的这种区别我们从下面的这些例句可以很好地领悟到:

(2) a. My hands are very dirty. I’ve been painting the house.

b. I have painted the house green. The house was white, but now it’s green.

思维分析:

句a中have been painting表示painting动作一直在持续,活动还没有结束,所以才有my hands are very dirty这样的现状。句a意思是“我的手很脏,我现在一直在给房间刷漆”。

句b中have painted表示painted动作已经结束,而且动作导致的结果是the house was white, but now it’s green房间现在是绿色的了。

(3) a. I’ve been cleaning the house but I still haven’t finished.

b. I’ve cleaned the house, but I still haven’t finished.(×)

思维分析:

为什么这里句a是正确的,而句b是错误的呢?理由很简单,句a用完成进行时have been cleaning就表明动作一直在持续,还没有结束,意思是“我一直在打扫房间,还没有扫完”。句b是错误的,因为它前面句子用了完成时态have cleaned就应该表示动作cleaned已经结束,即“我把房间已经打扫完了”,而后面接了一个I still haven’t finished,显然前后矛盾。

根据上面讨论的这两种时态本身意义的差别,我们就可以回答上面第一个问题,即我们为什么不能说上面句(1):

I have been drinking five cups of coffee this afternoon.(×)

前面说过,完成进行时强调动作持续的过程,而完成时则强调动作的结果或成就。既然强调动作的持续性,因此完成进行时是表示一种看起来是不间断的动作。如果涉及到做一件事的次数或一共做了多少件事情,这时都相当于把动作分割为一次一次的间断动作了,所以不能用现在完成进行时。从另一方面来说,既然讲到动作的次数或是一共做了几件事情,这两种情况都是在强调动作的结果或成就(emphasis on achievement),而不是动作本身过程(emphasis on duration),所以只能用现在完成时have done。因此,我们可以得出这样的结论:完成进行时态不能用来谈某个动作的具体次数或几件事情。这时,我们要用完成时态。这就解释了为什么在老外思维里没有:

I have been drinking five cups of coffee this afternoon.(×)

这样的句子,而一定会这么说:

(4) I have drunk five cups of coffee this afternoon.

因为这里说出了具体的五杯咖啡。
温馨提示:内容为网友见解,仅供参考
第1个回答  2009-10-16
have been doing 表示动作发生在过去对现在有影响,并且这个动作还会继续持续到将来

have done表示动作发生在过去,强调对现在的影响,但动作是否会持续下去就不清楚了
第2个回答  2009-10-16
都属于完成时
但前者表示该状态还在持续 后者表已完成

至于这个句子,肯定要看上下文!
第3个回答  2018-07-05
have been doing 是现在完成进行时,表过去发生的动作一直在进行到现在。
have done 是现在完成时,表在过去发生的动作对现有影响。
主要区别是have been doing 表示动作从过去一直持续到现在,并会继续下去。have done表示过去动作结束了,对现在产生了影响。

例句:
have been doing
1、
Biological systems have been doing this for billions of years.
生物系统亿万年来一直都是这样。
2、
Those who have been doing evil should immediately stop, repent and start anewand make amends for their crimes by good deeds.
做过坏事的人,赶快停止作恶,悔过自新,将功赎罪。
3、
Franny and I have been doing this for years.
franny和我干这个已经有点年头了。
4、
I have been doing this course for a year.
我学了这个课程已经有一年了。

have done
1、
I have done woodwork for many years.
我做木工好多年了。
2、
If I had not been enjoying the work, I would not have done so much of it.
如果我不喜欢这份工作的话,就不会这么卖命干了。
3、
I asked myself what I would have done in such a situation.
我问自己在这种情况下我会怎么做。
4、
What am I supposed to have done wrong now?
我这会儿究竟做错了什么?本回答被网友采纳

havebeendoing与havedone的用法区别
have been doing与have done的用法区别 have been doing 是现在完成进行时态的结构,表示某个动作从过去某一时间开始,一直持续到现在,或许将来还会继续进行。这种时态强调的是动作的持续性和进步性。have done 是现在完成时结构,它表示某个动作在过去发生并对现在有某种影响或结果。重点在于动作已经完成...

have done和have been doing有什么区别?
Have Done 这是一种完成时态,用于强调动作或事件已经完成,并且可能对当前产生影响。例如:“I have done my homework.”(我已经做完我的家庭作业。)这句话强调你已经完成了一项具体任务。Have Been Doing 是一种表示动作从过去一直持续到现在的时态,强调动作的持续性。例如:“I have been studying...

have been doing和have done的区别是什么?
have been doing:表示从过去某时一直在进行某动作,强调动作的持续性或重复性。have done:表示过去某时完成了某动作,强调动作完成后产生的结果或状态。have been doing 表示动作一直在进行,没有完成。have done 表示动作已经完成,产生了一个完成的结果。对比例句:She has been practicing the violin for ...

have been doing和have done的区别是什么?
区分have done和have been doing,我们需要从两个方面来讨论:一、完成时态和完成进行时态本身意义的差别;二、要结合动词的不同延续特点.首先我们来看两种时态的意义差别 两者根本区别是:完成进行时强调动作持续的过程(emphasis on duration),完成时强调动作的结果或成就(emphasis on achievement).具体来讲...

have done 和 have been doing有什么差别?什么时候用
你好,have done也可以表示持续到现在并且没完成的事情的,他们的相同和不同如下:相同点 1. 现在完成时和现在完成进行时都可以表示从过去某一时刻开始一直延续到现在的动作.如:I have worked in this school since 2001. I have been working here since 2001.2. 现在完成时和现在完成进行时都...

have been doing have done 的用法和区别
have been doing是现在完成进行时。have done是现在完成时。现在完成时的用法 ①表示结果的现在完成时 现在完成时着眼于过去的动作对现在产生的结果或影响。这是现在完成时的“已完成”用法,表示动作或过程发生在说话之前就已完成,并与现在有联系。这种联系实际上就是“过去的动作”对现在的影响或产生的...

have been doing sth.、have been done、have done(不知道有没有这种...
have been doing sth.是现在完成进行时态,表示一直在发生的动作、一直存在的状态 如:1. I have been waiting for your phone call these days. 2. He has been watching TV since I came back.have been done 是现在完成时态的被动语态形式,表示sth已经完成。如:1. The desks have be...

have been doing和have done的区别?
1.have been doing sth表示的是过去某个时间就开始做的事情,且一直持续到说话这个时刻这件事仍在继续并将一直继续下去。eg:I have been learning English for 12 years.我学英语已经12年了(12年前开始学,现在还在学,并且还将继续学)2.have done 表示的是过去做的事情,到说话的这个时刻,这件...

havebeendoing和havedone区别
have been doing是现在完成进行时态,强调动作的持续性或最近完成的动作;而have done是现在完成时态,强调动作的完成。两者的主要区别在于动作是否强调持续性和未完成性。详细解释:1. have been doing:这是现在完成进行时态的表达方式,它结合了现在完成时和进行时的特点。这种时态强调动作的持续性,表示...

have been doing和have done的区别
1)have been doing 是现在完成进行时,表过去发生的动作一直在进行到现在。We have reading an interesting book since last week.2)have done 是现在完成时,表在过去发生的动作对现有影响。So far I have been to Beijing twice.3)have(has) been done为现在完成时态的被动语态,表被动和完成...

相似回答