彭現省
英語中,任何時態都是“時間”與“動作意義”的結合。過去完成時的時間很明顯是“過去”;它的動作意義就是“已經完成”。換句話說,過去完成時表示的是在過去某一時間或某一動作之前已經發生或完成了的動作,它所指的時間為“過去的過去”。
一、過去完成時的主要用法
1.表示過去某一時間或動作之前已經發生或完成的動作,其典型時態標志為“by/by the end of+過去的時間點”或“by the time/when+謂語動詞為一般過去時的從句。
例如:Before 12 o'clock last night he had left for Shanghai.昨天晚上十二點以前他就已經出發去上海了。
By the time she reached there,the rain had stopped.等她到那兒時,雨已經停了。
We had written five compositions by the end of last month.到上個月底我們已經寫了五篇文章。
He had finished doing the homework by yesterday.昨天之前他就做完了作業。
Her little brother hadn't gone into the bathroom by the time she got up.她起床時,她弟弟還沒有進入浴室。
2.過去完成時還可以表示由過去某一時間開始,一直延續到過去另一時間的動作或狀態。它常與for或since構成的短語或由since引導的從句連用。
例如:By 2015 Xiao Wang had taught math at that village school for 18 years.到2015年為止,小王已經在那所鄉村小學教了十八年數學。
She said she had lived in Jinan since five years before.她說過她五年前就在濟南居住了。
Tom told me he had stayed here since he came back.湯姆告訴我,他回來后就一直待在這兒。
3.在含有賓語從句的主從復合句中,若主句的謂語動詞為一般過去時,且賓語從句的謂語動詞表示的動作發生在主句謂語動詞所表示的動作之前,那么賓語從句的謂語動詞要用過去完成時。
例如:The teacher told us that our country had sent up another man-made satellite into the space.老師告訴我們我國又向太空發射了一顆人造衛星。
He told me that he had heard of the good news.他告訴我他已經聽說了那個好消息。
二、過去完成時與現代完成時的區別
過去完成時表示的是在過去某一時間或某一動作之前已經發生或完成的動作,強調動作發生在“過去的過去”;而現在完成時則表示動作發生在過去,一直延續到現在或者仍然和現在有關,強調發生在過去的動作對現在產生的影響或結果。請比較:
We had seen five English movies by the end of last month.到上個月末,我們已經看了五部英文電影。
We have seen five English movies so far.到目前為止,我們已經看了五部英文電影。
三、過去完成時與一般過去時的區別
過去完成時與一般過去時雖然都可以和表示過去的時間狀語連用,表示過去發生的動作或存在的狀態,但它們的側重點有所不同:過去完成時表示過去某一時間或某一動作之前就已經完成的動作或存在的狀態,而一般過去時則主要表示在過去某一時間發生的動作或存在的狀態。請比較:
How many houses had they built in their village by the end of last year?到去年年底他們村建造了多少房屋?
How many houses did they build in their village last year?去年他們村建造了多少房屋?
四、不用過去完成時的情況
1.主句的時態是一般過去時,而賓語從句中有明確表示過去的時間狀語時,則賓語從句中的時態不用過去完成時,仍然使用一般過去時。
例如:Ted said Julia visited her uncle three days ago.特德說茱莉亞三天前去看望了她的叔叔。
2.敘述在過去時間里按順序連續發生的兩個以上的動作或事件時,雖然這些動作或事件在時間上有先后之別,可以都用一般過去時態。
例如:They decided to stay there,so they built their homes and made their farms.他們決定留在那里,因此他們建起了家園和農場。
Donna got up,washed her face,brushed her teeth,took a shower,had a quick breakfast and then went to school this morning.今天早上丹娜起床后,洗臉、刷牙、洗淋浴,匆匆吃了早飯,然后上學去了。
3.當句中有yesterday,last week(month,year…),in 2015,five years ago等表示很確定的過去時間時,謂語動詞只能用一般過去時。
例如:I went to the Great Wall three years ago.三年前我去過長城。
4.漢語中雖然有“了”“曾經”“過了”等字眼表示動作已經完成,但它們并不表明動作是在過去某一時間以前完成的,所以譯成英語時通常要用一般過去時,不用過去完成時。
例如:He taught English for ten years.他教過十年英語。
5.在含有before,after,when,until,as soon as等引導的狀語從句的主從復合句中,如果主句的動作與從句的動作緊接著發生,則主句和從句中的謂語動詞都可以用一般過去時態。
例如:When she entered the room,she found the boy crying.她進屋時發現那個男孩在哭。
As soon as the teacher came.nto the classroom,the students stopped talking.老師一走進教室,學生們就不再說話了。
注意“had+名詞或代詞+過去分詞”這種結構形式上很像過去完成時態,但實際上卻是一般過去時,表示“請或讓別人做某事”,名詞或代詞作賓語,過去分詞作賓語補足語。
例如:lsabel had her hair cut yesterday afternoon.昨天下午,伊莎貝爾理了頭發。
He had the TV set repaired yesterday afternoon.昨天下午他讓人把電視機修了修。