52 現(xiàn)在完成進(jìn)行時與現(xiàn)在完成時的比較(一) Track 052
上述現(xiàn)在完成進(jìn)行時的用法和現(xiàn)在完成時的第一種用法非常接近。即,都表示動作從過去某一時間持續(xù)到現(xiàn)在,并可能仍將持續(xù)。二者之間有相同點(diǎn),也有不同點(diǎn)。
(1)相同點(diǎn)
1)謂語動詞都表示延續(xù)性的動作。如:live, learn, study, sleep,snow, wait, work, teach, stay等。
2)都與表示“一段時間”的時間狀語連用。這時,用兩種時態(tài)幾乎沒有多大區(qū)別。例如:
a. I have been learning / have learned English for ten years.
十年來我一直在學(xué)習(xí)英語。
b. I have been living / have lived here since 3 years ago.
自從三年前開始,我就一直住在這里。
c. He has been sleeping / has slept for three hours.
d. I have been working / have worked in this company for 3 years.
e. It has been snowing / has snowed for a long time.
(2)不同點(diǎn)
現(xiàn)在完成時只有在與for three years,since three years ago等這樣的表示一段時間的時間狀語連用時才與現(xiàn)在完成進(jìn)行時的意思相近。不加這樣的時間狀語時,現(xiàn)在完成時表示的是一個完成了的動作。例如:
a. I have worked / have been working in this company for 3 years.
b. I have worked in this company.
我在這家公司工作過。(現(xiàn)在不在了,表示過去的經(jīng)歷)
c. I have been working in this company.
我一直就在這家公司工作。(現(xiàn)在還在這家公司)
d. He has been sleeping / has slept for three hours.
他已睡了3個小時。(也可能還在睡)
e. He has slept.
他睡過了。(所以現(xiàn)在不困了)
f.He has been sleeping.
他一直在睡覺。(現(xiàn)在還在睡)
g. Have you ever worked in a foreign-funded company?
你在外企工作過嗎?(問過去的經(jīng)歷,動作已結(jié)束)
h. You look tired. Have you been working hard?
你看起來很累,工作一直很辛苦吧?(問是否一直是這樣辛苦)
從上面c,f,h三句我們可以看出,現(xiàn)在完成進(jìn)行時既可與表示一段時間的狀語連用,也可不連用,都可表達(dá)“一直在持續(xù)”這一含義。