過去完成進行時

過去完成進行時

過去完成進行時(The Past Perfect Progressive)是相對過去的某個時刻來說已經對現在有直接影響並且還在進行的動作。在英語時態中,“時“指動作發生的時間,”態“指動作的樣子和狀態。

放在間接引語或虛擬語氣中時它的時態不能再向前推,向後推是現在完成進行時

基本結構


had+been +動詞-ing

構成


過去完成進行時是由"had been +現在分詞"構成。在英語時態中,“時“指動作發生的時間,”態“指動作的樣子和狀態。
She had been suffering from a bad cold when she took the exam.她在考試之前一直患重感冒。
They had been expecting the news for some time?他們期待這個消息有一段時間了吧?
Rafael was scolded even though he hadn't been doing anything wrong.儘管拉斐爾沒做什麼錯事,但他還是挨罵了。

特別含義


1.尚未完成:
He had been writing the novel.(他沒有完成它)
2.企圖:
He had been studying the meaning of this proverb.(他一直在努力學習它)
3.未得結果:
We had been studying what our enemy had said.(但我們不能理解)
4.最近情況:
He had been quarrelling with his wife.(近來)
6.情緒:
What had he been doing?(不耐煩)

特點


這種時態很少用在否定句中,而多以過去完成時代替:
He had not practised English for many years.(普通說法)
He had not been practising English for many years.(少見)
這種時態還可用在said,supposed等引起的間接引語中,代替現在完成進行時:
He said:“I have been speaking to John."= He said that he had been speaking to John.
He thought:“She was watching me when I passed.”= He thought that she had been watching him when he had passed.
過去完成進行時經常與現在完成進行時混淆。
現在完成進行時(The present perfect progressive) 由 have/has been +-ing 分詞構成;
過去完成進行時( The past perfect progressive tenses )由 had been +-ing 分詞構成.
現在/過去完成進行時的用法:
A. 在某段時間內一直進行的動作用現在完成進行時來強調動作在某段時間裡的持續性.動作通常有"現在"的結果,要根據上下文來確定到"現在"為止,動作是否還在繼續進行.同樣,過去完成進行時表示在過去更早時間內進行的動作,並對過去某一時刻產生結果。
B.表示重複動作的現在/過去完成進行時
我們也可以用完成進行時形式來表示現在或過去經常重複的動作
注意:過去完成進行時和過去完成時類似,需要有過去這一時間段

用法


表示過去某一時間之前一直進行的動作。
過去完成進行時表示動作在過去某一時間之前開始,一直延續到這一過去時間。和過去完成時一樣,過去完成進行時也必須以一過去時間為前提。
I had been looking for it for days before I found it.這東西我找了好多天才找著的。
They had only been waiting for the bus a few moments when it came.他們只等了一會兒車就來了。
表示反覆的動作。
He had been mentioning your name to me.他過去多次向我提到過你的名字。
You had been giving me everything.你對我真是有求必應。
常用於間接引語中。
The doctor asked what he had been eating.醫生問他吃了什麼。
I asked where they had been staying all those days.我問他們那些天是呆在哪兒的。
接具有“突然”之意when句。
I had only been reading a few minutes when he came in.我剛看了幾分鐘他就進來了。
She'd only been reviewing her lessons for a short while when her little sister interrupted her.她溫習功課才一會兒,她妹妹就打斷她了。
I had been sleeping when my friend telephoned me.我正在睡覺時,我的朋友給我打電話。

時態比較


過去完成進行時與過去完成時的用法很相近,它通常表示某個過去正在進行的動作或狀態,持續到過去某個時刻,還未完成,一直持續到之後才結束
He had been waiting for two weeks. He was still waiting.(有一個表示一段時間的狀語)
他已經等了兩個星期。他還在等。
Up to that time he had been translating those books.直到那時他一直在翻譯這些書。
He had been writing the letter till two o'clock.他一直在寫那封信到兩點鐘。
He was thirty years old.He had been gambling since he was ten.(He was still gambling at thirty.)
他三十歲。他從十歲開始就一直在賭博。(三十歲的他仍然賭博。)
He had been standing there in the sun.(沒有時間狀語)
他一直站在太陽底下。
He had been thinking about his marriage.(沒有時間狀語)
他一直在對他的婚姻思考。
不過這種時態並不一定表示這個過去動作將持續下去:
He came back at seven.He had been waiting for her two hours.(At seven he did not wait any more.)
他在七點回來了。他等了她兩個小時。(在七點時,他不想再等了。)
He stopped swimming.He had been swimming for the last three hours.他停止了游泳。他已經在過去的三小時內游泳。
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 mother 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)句是完成時態,說明“蘋果一個不剩了”。