1 現(xiàn)在完成時的概念

現(xiàn)在完成時表示過去發(fā)生并且已經完成的動作對現(xiàn)在造成影響或后果,以及過去某一時間開始并一直持續(xù)到現(xiàn)在的動作或狀態(tài)。
現(xiàn)在完成時是由助動詞 have(has)+動詞的過去分詞構成。
 
2 現(xiàn)在完成時的用法:

其主要用法有三種:
I 已完成用法。 表示一個過去發(fā)生并結束的動作對現(xiàn)在產生的結果和影響。這一類情況可以細致分為下述兩種情況。
1)表示開始于過去的動作剛剛結束。常和just,now,already,yet,not…yet等連用。

Li Ming has just turned off the light. 李明剛剛把燈關上。(說明現(xiàn)在燈關上了)

I've finished my homework now. 現(xiàn)在我已經做完作業(yè)了。(說明可以交作業(yè)或做別的了)
 
2)表示過去動作的結果,現(xiàn)在仍殘留著。一般不用時間狀語。

I have lost my pen. 我把筆丟了。 (說明過去某時丟的,現(xiàn)在我還沒找到這支筆)

She has become a teacher. 她已經當了老師。(說明她現(xiàn)在仍是老師)

II 未完成用法。表示過去已經開始,持續(xù)到現(xiàn)在,而且還能繼續(xù)下去的動作或狀態(tài)。往往和表示一段時間的狀語連用。如today,this week(month),lately,recently,these days,in the past few days,during the last two weeks. since,since yesterday,since 2 days ago,since 1991,for a longtime,for a month,so far,up to now,till(until) now等。

He has lived here for 30 years. 他住在這兒三十年了。(現(xiàn)在還住在這兒)

They've known each other since childhood. 他們從小彼此相識。(現(xiàn)在還繼續(xù)往來)

How long have you studied English? 你學英語多久了?(現(xiàn)在仍在學)

III 經驗性用法。表示從過去到現(xiàn)在之間曾經經歷過的事情。一般譯為漢語“過”,常和often,never,ever,once,twice,three times,before,since等連用。

I have been to the Summer Palace twice. 我曾經去過頤和園兩次。

We have visited your school before. 我以前曾去過你們學校。
(過去的經歷,但現(xiàn)在依然記得)

3 現(xiàn)在完成時的時間狀語

I 現(xiàn)在完成時屬于現(xiàn)在時范圍,故不能和過去的時間狀語連用。如:yesterday,last Sunday,in1990,three years ago等。但是,在強調動作產生的后果和影響時,可以和一些表示不確定的時間狀語連用。

a. 用副詞already和yet。already一般用于肯定句中,yet一般用于否定句和 疑問句中。如:We have already finished our homework.我們已完成作業(yè)了。

They haven't finished their homework yet.他們還沒有完成作業(yè)。
 
b. 用ever 和never。多用于否定或疑問句中,表示“曾經”或“從未“等。 如:

-Have you ever been to the Great Wall?你曾經去過長城嗎

-I have never been to the Great Wall.我從未去過長城。
 
c. 用表示到說話為止的過去時間狀語,如just,before,up to now,the past few years等。例如:I have seen her before,but I can not remember where. 我以前見過她,但記不起在哪里見過。

He has been there three times the last few days. 近幾年他去過那里三次了。
 
d. 用包括“現(xiàn)在”在內的時間狀語,如:now,today,this morning(month,year,term)等。例如:-Have you met him today?-No,I haven't. 今天你見過他嗎?我 沒有。

How many times have you been there this year? 今年你去過那里多少次?

II 短暫性動詞不能和表一段時間的時間狀語連用。如:come, go, arrive, reach, see, hear, close, leave, begin, start, lose, buy, close, fall, join, die, get up等。但如果要保留表一段時間的時間狀語,必須將動詞改為延續(xù)性動詞。現(xiàn)歸納總結一下由非延續(xù)性動詞到延續(xù)性動詞的轉換,如:

fall asleep (ill) →be asleep (ill) get to know→ know

begin,(start)→ be on open →be open

buy→ have get up→ be up

die→ be dead go out→ be out

come→ be in close→be closed

arrive→be here join→be in, be a +名詞

finish( end )→be over leave, move →be away, be out of

borrow →keep go to school→be a student

catch(a cold)→ have(a cold) begin to study→study

come back→be back put on→wear 或be on
 
如:He has been a soldier for three years.他參軍三年了。

His father has been dead for two years.他父親去世二年了。

The film has been on for ten minutes.電影已開始十分鐘了。

We have studied English for three years. 我們(開始)學英語已三年了。