现在完成时与现在完成进行时有什么区别

11个回答

  • (1)现在完成进行时和现在完成时皆可表示动作对现在产生的结果,但前者所表示的结果是直接的,而后者所表示的则是最后的结果.如:

    We have been cleaning the classroom.(a)

    We have cleaned the classroom.(b)

    (a)句可译为“我们打扫教室来着.”其直接结果可能是:我们身上都是灰.(b)句可以译为“我们把教室打扫过了.”其结果是:现在教室很清洁,可以用了.又,(a)句表示教室刚刚打扫过,(b)句则可能表示教室是昨天打扫的.

    (2)现在完成进行时有时有延续性,现在完成时往往没有.如:

    They have been widening the road.(a)

    They have widened the road.(b)

    (a)句的意思是他们在加宽马路,但尚未完工.(b)句的意思则是已完工了.有时现在完成时有延续性(如一些属于持续体的动词),但无临时性质.如:

    (3)但现在完成进行时并不总是具有临时的性质,如:

    My moth!er has been teaching English for twenty years.(a)

    My mother has taught English for twenty years.(b)

    (a)句在此并无临时性质,但较口语化.(b)句则较为正式.又,(a)句表示动作现在仍在继续.并将延续下去,(b)句的动作是否延续下去,须由上下文决定,但在一般情况下都是延续下去的.

    (4)现在完成进行时往往表示动作在重复,现在完成时则常常不带重复性.如:

    Have you been meeting her lately?(a)

    Have you met her lately?(b)

    (a)句有“经常相会”之意,(b)句则没有.(b)句如与often,every day等时间状语连用,当然也表示动作在重复.

    (5)现在完成进行时比较生动,有时含有明显的感情色彩,而现在完成时往往只说明一个事实,一种影响或结果,平铺直叙,没有什么感情色彩可言.如:

    What have you been doing?(a)

    What have you done?(b)

    (a)句表示惊异.(b)句只是一个问题.