最近上課,一個學生提問,說對於英語中的完成時,完全搞不明白。
班上的同學也有同樣的問題,於是,便根據大家問題的匯集,做了如下整理和回答。
完成時和過去時有什麼區別?
現在完成時和一般過去時講的都是過去的動作,但是
重點的區別在於,一般過去時,只是陳述這個動作,而現在完成時強調的是動作對現在的影響,或者這個動作一直延續到現在。
比如: I cleaned my room yesterday.(我昨天打掃了房間,強調打掃這個動作)
I have just cleaned my room.(我剛打掃完房間,意思房間現在是乾淨的。)
I have visited your school before.(我以前參觀過你們學校,潛意思是你現在邀請我去,我不太想去,已經參加過了。)
I have alreadyvisited your school.(我已經參觀過你們學校了,潛意思同上。)
I haven't visited your school yet.(我還沒有參觀你們學校,潛意思是你也不邀請我參觀一下。)
什麼時候用現在完成時?
1)強調動作對現在的影響(強調動作的過程,經歷,所以常可以看到before,already,yet,yet多用在否定句中,對此的理解可以回看與一般過去時的區別裡的例子)
2)強調動作的延續,從過去的一個時間點開始,持續到現在,而且還可能繼續延續下去。如圖:
例如:I have know Lindy since my childhood. (我從小就認識Linda,表示現在還在延續,since後面加了一個點時間。)
He has lived in Beijing for 30 years.(他住在北京30年了,表示現在還住在北京,for後面加了一個段時間。)
這裡since+點時間,表示從那個時間開始,for+段時間,表示在...期間。
過去完成時,現在完成時,將來完成時
下面再看一個時間軸,我們來理解完成時。
現在是8點,你6點做作業,7點晚餐,現在準備去打掃房間,計劃9點看電視,10點睡覺。
那麼6點和7點就是過去,9點和10點就是將來。
現在你以現在8點做為參照點,看7點的事情,這個就是現在完成時。
I have had dinner.(如圖)
現在完成時
以7點做為參照點,看6點完成的事情,就是過去完成時。
過去的過去(過去完成時不能單獨出現,他必須有一個過去的時間做為參照點,所以稱為過去的過去)。
I had finished my homework before I had dinner.
以未來10點為參照點,講9點發生的事,就是將來完成時。
I will have watched TV when I go to bed.
希望幫到你。