have been doing have done 的用法和区别

1个回答

  • have been doing是现在完成进行时.

    have done是现在完成时.

    现在完成时的用法

    ①表示结果的现在完成时

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

    I have bought a pen.

    我买了一支笔.(结果:I have a pen now.)

    The temperature has increased by 10℃.

    温度上升了10摄氏度.(结果:It is quite hot now.)

    Air pollution has taken the lives of many people.

    空气污染已经夺去了很多人的生命.(结果:Air pollution is very serious now.)

    注意:

    现在完成时的上下文所指的时态必须呼应.

    ②表示经历的现在完成时

    强调过去某一时刻到说话时这段时间中的经历.

    Have you ever been to the Great Wall?

    你去过长城吗?

    I have visited Beijing at least ten times.

    北京我至少访问过十次了.

    ③表示延续的现在完成时

    这是现在完成时的“未完成”用法,表示一个动作或状态从过去某时开始,持续到现在,可能要继续下去.

    He's loved fishing for a long time.

    他爱好钓鱼为时已久.(他现在仍爱好钓鱼)

    注意:

    现在完成时的“未完成”用法既可用于动态动词(主要是持续动词),也可用于状态动词,但它一般不适用于表示短暂动作或位置转移的动词,如:open,break,go,come,arrive,leave等.如用这类动词表示“未完成”,通常只限于否定结构.

    I haven't seen a film for weeks.

    我已经好几个星期没看电影了.

    现在完成进行时的用法

    ①表示动作从过去某时开始,一直延续到现在

    现在完成进行时常和all this time,this week,this month,all night,all the morning,recently等状语以及since和for引导的状语连用.

    I have been reading Hemingway's Farewell to Arms recently.

    我最近一直在读海明威的《永别了,武器》.

    She has been reciting the words all the morning.

    她整个上午都在背单词.

    This is what I have been expecting since my childhood.

    这是我从小以来就一直期待着的事情.

    ②表示动作刚刚结束

    My clothes are all wet.I've been working in the rain.

    我的衣服全湿了,我刚才一直在雨中干活.

    ③表示一个近期内时断时续、重复发生的动作

    You've been saying that for five years.

    这话你已经说了五年了.

    ④表达较重的感情色彩

    What have you been doing to my dictionary?

    看你把我的字典弄成什么样子了!

    现在完成进行时和现在完成时的比较

    ①现在完成进行时可以表示动作的重复,而现在完成时一般不表示重复性.

    Have you been meeting him recently?

    你最近常和他见面吗?

    Have you met him recently?

    你最近见到过他吗?

    ②现在完成进行时有时含有感情色彩,而现在完成时一般是平铺直叙.

    I have been waiting for you for two hours.

    我一直等了你两个小时.(可能表示不满)

    I have waited for you for two hours.

    我等了你两个小时.(说明一个事实)

    ③现在完成进行时强调动作,而现在完成时强调结果.

    Who has been eating the oranges?

    谁一直在吃这些桔子呀?(还剩余一些)