怎樣區別現在完成時和現在完成進行時

  現在讓我們來比較一下現在完成時和現在完成進行時。在比較這兩個時態時,關鍵在於對現在完成進行時的基本概念是否理解,因為對於現在完成時我們已經有了一個基本的理解了。

現在完成進行時是一兼有現在完成時和現在進行時二者基本特點的時態。由於它有現在完成時的特點,所以它可以表示某一動作對現在產生的結果或影響。由於它有現在進行時的特點,所以它也可以表示某一動作的延續性、臨時性、重複性、生動性乃至感情色彩。

現在就現在完成進行時的這些特點和現在完成時作一簡單的比較:

(1)現在完成進行時和現在完成時皆可表示動作對現在產生的結果,但前者所表示的結果是直接的,而後者所表示的則是最後的結果。如:we have been cleaning the classroom.(a)

we have cleaned the classroom.(b)

(a)句可譯為“我們打掃教室來著。”其直接結果可能是:我們身上都是灰。(b)句可以譯為“我們把教室打掃過了。”其結果是:現在教室很清潔,可以用了。又,(a)句表示教室剛剛打掃過,(b)句則可能表示教室是昨天打掃的。

be careful! john has been painting the door.(a)

john has painted the door.(b)

(a)句表示約翰剛剛把門油漆過,現在油漆還未乾,所以你要小心。(b)句則無此含義,油漆可能已幹了。

(2)現在完成進行時有時有延續性,現在完成時往往沒有。如:they have been widening the road.(a)

they have widened the road.(b)

(a)句的意思是他們在加寬馬路,但尚未完工。(b)句的意思則是已完工了。有時現在完成時有延續性(如一些屬於持續體的動詞),但無臨時性質。如:

mr. smith has been living in london since 1978.(a)

mr. smith has lived in london since 1979.(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)句只是一個問題。

have you been waiting long?(a)

have you waited long?(b)

(a)句較(b)句生動。又,(a)句比較口語化。

i have been wanting to meet you for long.(a)

i have long wanted to meet you.(b)

(a)句比(b)句更親切,更有禮貌。

recently mary has been doing her work regularly.(a)

recently mary has done her work regularly.(b)

(a)句顯然是在表揚瑪麗。(b)只說明一個事實。

下面還有一例,頗為有趣:who's been eating my apples?(a)

who's eaten my apples?(b)

(a)句有強烈的感情色彩,表示憤怒不滿,(b)句只是希望回答的一個問題。又,(a)句兼有進行時態,所以有“蘋果未被全部吃光”的意思,(b)句是完成時態,說明“蘋果一個不剩了”。