現(xiàn)在完成時(shí)(Present perfect)過去發(fā)生并且已經(jīng)完成的動作對現(xiàn)在造成影響或后果,過去某一時(shí)間開始并一直持續(xù)到現(xiàn)在的動作或狀態(tài)。
基本結(jié)構(gòu):主語+have/has+動詞的過去分詞(done)
①肯定句:主語+have/has+動詞的過去分詞+賓語.
②否定句:主語+have/has+not+動詞的過去分詞+賓語.
③一般疑問句:Have/Has+主語+動詞的過去分詞+賓語.
④特殊疑問句:特殊疑問詞或詞組+一般疑問句(have/has+主語+過去分詞+其他)
定義:?。?) 強(qiáng)調(diào)動作是過去發(fā)生的
(2) 強(qiáng)調(diào)對現(xiàn)在的影響或結(jié)果
(3) 在過去不確定的時(shí)間里發(fā)生的動作,但是結(jié)果對現(xiàn)在有影響。
但過去分詞一定要選擇準(zhǔn)確。

1 、規(guī)則動詞:規(guī)則動詞的過去分詞的構(gòu)成規(guī)則與規(guī)則動詞的過去式的構(gòu)成規(guī)則相同。四點(diǎn)變化規(guī)則:
(1)、一般動詞,在詞尾直接加“ ed ”。 work---worked---worked ,visit---visited---visited (2)、以“ e ”結(jié)尾的動詞,只在詞尾加“ d ”。 live---lived---lived ,
(3)、以“輔音字母 + y ”結(jié)尾的動詞,將 "y" 變?yōu)?"i" ,再加“ ed ”。
study---studied---studied ,cry---cried---cried
(4)、重讀閉音節(jié)結(jié)尾,末尾只有一個(gè)輔音字母,先雙寫該輔音字母,再加“ ed ”。 stop---stopped---stopped , drop---dropped--dropped不規(guī)則動詞 burn---burnt---burnt 1hide hid hiden 隱藏 2forget forgot forgoten 忘記 3see saw seen 看見 4take took taken

2 、不規(guī)則動詞: AAA型 原型 過去式 過去分詞
burst burst burst cast cast cast cost cost costcut cut cut
hit hit hit hurt hurt hurt put put put set set set shut shut shut
spread spread spread let let let read read read led led led
AAB型 beat beat beaten
ABA型 become became become run ran run come came come
特殊情況  read read read  read原形發(fā)音為/ri:d/,過去式和過去分詞發(fā)音為/red/
ABB型 bring brought brought buy bought bought build built built burn burnt burnt catch caught caught dig dug dug  feel felt felt fight fought fought  find found found feed fed fed get got got hang hung hung hear heard heard  hold held held keep kept kept lay laid laid  lead led led lose lost lost  leave left left lend lent lent  make made made mean meant meantmeet met met  pay paid paid sell sold sold shoot shot shot say said said
sit sat sat stand stood stood shine shone shone sweep swept swept
sleep slept slept teach taught taught tell told told think thought thought win won won  

ABC型 begin began begun blow blew blown break broke broken choose chose chosen draw drew drawn drive drove driven drink drank drunk fly flew flown forgive forgave forgiven forget forgot forgotten freeze froze frozen give gave given grow grew grown know knew known ride rode ridden rise rose risen ring rang rung shake shook shaken sing sang sung sink sank sunk swim swam swum throw threw thrown write wrote written
take took taken wear wore worn


用法
(1)現(xiàn)在完成時(shí)用來表示現(xiàn)在之前已發(fā)生過或完成的動作或狀態(tài),但其結(jié)果卻和現(xiàn)在有聯(lián)系,也就是說,動作或狀態(tài)發(fā)生在過去但它的影響現(xiàn)在還存在.
I have spent all of my money.(含義是:現(xiàn)在我沒有錢花了.)
Jane has laid the table.(含義是:現(xiàn)在桌子已經(jīng)擺好了.)
Michael has been ill.(含義是:現(xiàn)在仍然很虛弱)
He has returned from abroad. (含義是:現(xiàn)在已在此地)

(2)現(xiàn)在完成時(shí)可以用來表示發(fā)生在過去某一時(shí)刻的,持續(xù)到現(xiàn)在的動作(用行為動詞表示)或狀態(tài)(be動詞表示)常與for(+時(shí)間段),since(+時(shí)間點(diǎn)或過去時(shí)的句子)連用.
①for+時(shí)段  
②since+過去一個(gè)時(shí)間點(diǎn)(譯為:自從……以來)
③since+時(shí)段+ago
④since+從句(過去時(shí))
●⑤It is+時(shí)段+since+從句(過去時(shí)) Mary has been ill for three days. I have lived here since 1998.
●注:瞬間動詞(buy,die,join,lose……)不能直接與for since 連用。要改變動詞come/arrive/reach/get to-----be in go out----be out finish----be over
 open----be open  die----be dead
★代替buy My brother has had(不能用has bought) this bike for almost four years.

★2、用keep或have代替borrow
I have kept(不能用have borrowed) the book for quite a few days.
★3、用be替代become
How long has your sister been a teacher?
★4、用have a cold代替catch a cold Tom has had a cold since the day before yesterday.

★5、用wear代替put on
b)用“be+形容詞”代終止性動詞
1、be+married代marry 2、be+ill代fall (get) ill
3、be+dead代die 4、be+asleep代fall (get) asleep
5、be+awake代wake/wake up 6、be+gone代lose,die,sell,leave
7、be+open代open 8、be closed代close/shut
9、be+missing(gone,lost)代lose
c)用“be+副詞”代終止性動詞 1“be+on”代start,begin  2“be+up”代get up
3“be+back(to)”代return to,come back to,go back to
4“be here (there)”代come(arrive,reach,get) here或go (arrive,reach,get) there等等
d)用“be+介詞短語”代終止性動詞
1.“be in/at +地點(diǎn)”代替go to /come to 2.用be in the army 代替join the army 3.“be in/at +地點(diǎn)”代替move to
常用瞬間動詞變延續(xù)性動詞表
常用瞬間動詞變延續(xù)性動詞表:
1. have arrived at/in sw. got to/reached sw. come/gone/moved to sw.
→have been in sw./at…相應(yīng)的介詞
2. have come/gone back/returned → have been back
3. have come/gone out →have been out
4. have become → have been
5. have closed / opened→ have been close/open
6. have got up → have been up;
7. have died → have been dead;
8. have left sw. → have been away from sw.
9. have fallen asleep/got to sleep → have been asleep;
10. have finished/ended/completed → have been over;
11. havemarried → have been married;
12. have started/begun to do sth. → have done sth. ;
13. have begun → have been on
14. have borrowed/bought →have kept/had
15. have lost → haven’t had
16. have put on →have worn
17. have caught /get a cold → have had a cold;
18. have got to know → have known
19. have/has gone to → have been in
20. have joined/have taken part in the league/the Party/the army
→have been a member of/ have been in/have been the Party’s member/the league member/the soldier…

1.現(xiàn)在完成時(shí)不能單獨(dú)與準(zhǔn)確時(shí)間連用,(如表示過去的時(shí)間狀語)
如yesterday(morning、afternoon),last(morning、afternoon)等,除非與for,since連用.

2.現(xiàn)在完成時(shí)往往同表示不確定的過去時(shí)間狀語連用
,如already(肯定), yet(否定,疑問), just, before, recently,still, lately等:  He has already obtained a scholarship.
I haven't seen much of him recently (lately).

3. 現(xiàn)在完成時(shí)常常與表示頻度的時(shí)間狀語連用,
如often, sometimes, ever, never, twice, on several occasion等:
Have you ever been to Beijing
I have never heard Bunny say anything against her.

4. 現(xiàn)在完成時(shí)還往往可以同包括現(xiàn)在時(shí)間在內(nèi)的時(shí)間狀語連用,
如now, up to these few days/weeks/months/years, this morning/week/month/year, just, today, up to present, so far等:
Peter has written six papers so far.
Man has now learned to release energy from the nucleus of the atom.

5. 現(xiàn)在完成時(shí)還可以用來表示過去的一個(gè)時(shí)間到現(xiàn)在這段時(shí)間內(nèi)重復(fù)發(fā)生的動作. We have had four texts this semester.

6.現(xiàn)在完成時(shí)的"完成用法"
現(xiàn)在完成時(shí)的"完成用法"指的是動作發(fā)生在過去某一時(shí)刻并已結(jié)束,但該動作對現(xiàn)在產(chǎn)生了影響,與現(xiàn)在情況具有因果關(guān)系。
例如:He has turned off the light.他已把燈關(guān)了。(動作結(jié)束于過去,但說明的是現(xiàn)在的情況--燈現(xiàn)在不亮了。)
現(xiàn)在完成時(shí)"完成用法"的特點(diǎn)是動作不延續(xù),因此,該時(shí)態(tài)只能與表示不定的過去時(shí)間狀語(如:already,yet,before,recently等)、頻度時(shí)間狀語(如:never,ever,once等)、包括現(xiàn)在時(shí)刻在內(nèi)的時(shí)間狀語(如:this morning / month /year...,today等)連用。
例如: Have you found your pen yet?你已找到你的鋼筆了嗎?

7.現(xiàn)在完成時(shí)的"未完成用法"
現(xiàn)在完成時(shí)的"未完成用法"指的是動作開始于過去某一時(shí)刻,一直延續(xù)到現(xiàn)在,或可能還要繼續(xù)下去。
例如:He has lived here since 1978.自從1978年以來,他一直住在這兒。(動作起始于1978年,一直住到現(xiàn)在,可能還要繼續(xù)住下去。)
I have been in the army for more than 5 years.我在部隊(duì)已經(jīng)呆了五年多了。(動作開始于5年前,一直延續(xù)至今,有可能還要繼續(xù)下去。)
此種用法的句中常需一個(gè)表示一段時(shí)間的狀語(由since或for引導(dǎo)),或表示與現(xiàn)在時(shí)刻相連的時(shí)間狀語(如:up to now,so far)等。
例如:I have heard nothing from him up to now.到目前為止我沒有他的任何消息。
注意:(1)現(xiàn)在完成時(shí)的未完成用法只適用于延續(xù)性動詞,不可用于終止性動詞,即瞬間完成或延續(xù)時(shí)間很短的動詞。如:come,go,arrive,leave,join,become,die等。

8.一段時(shí)間+has passed+since從句

9. 現(xiàn)在完成時(shí)常和短語 "up to now /till now", "so far" (意思是從過去某一確定的時(shí)間一直延續(xù)到現(xiàn)在.)
 Up to/till now he's read many story books. 至今他已讀過好多故事書。
I've been to New York three times so far. 至今我已到紐約去過三次。
10 has gone (to),has been (to), has been (in) 的區(qū)別 gone:去了沒回
been to :去過  been in:呆了很久

10.不能與when連用
一般過去時(shí)和現(xiàn)在完成時(shí)
( 1 )、一般過去時(shí)的謂語動詞用過去式,而現(xiàn)在完成時(shí)的謂語基本構(gòu)成是“主語+ have/ has + 動詞(V.)的過去分詞”。 過去時(shí)表示過去某時(shí)發(fā)生的動作或單純敘述過去的事情,強(qiáng)調(diào)動作;現(xiàn)在完成時(shí)為過去發(fā)生的,強(qiáng)調(diào)過去的事情對現(xiàn)在的影響,強(qiáng)調(diào)的是影響。
(2) 、一般過去時(shí)通常與表示過去的時(shí)間狀語連用。如: yesterday, last week , two years ago ,just now ,in 2002 等;而現(xiàn)在完成時(shí)則常與 just ,already ,ever ,never 等副詞和 these days ,this week ,since ......, for ...... 等表示一段時(shí)間的狀語連用。 試比較以下幾組句子,有什么區(qū)別:
① A:Have you seen the film ? B:Did you see the film ?
分析:你看過這部電影嗎?( A )句強(qiáng)調(diào)的是被問者對劇情是否了解;
( B )句強(qiáng)調(diào)的是看這部電影的動作是否發(fā)生過,并不強(qiáng)調(diào)是否知道其內(nèi)容。
② A:How has he done it ?
B:How did he do it ?
分析:他是怎么做的這件事?( A )句強(qiáng)調(diào)的是他做這件事的方式對現(xiàn)在產(chǎn)生了某種影響;
( B )句單純的詢問做這件事的方式。
③ A:He has lived in Beijing for 8 years .
B:He lived in Beijing for 8 years .
分析:他在北京住了 8 年。( A )句講的是到目前為止他在北京住了 8 年,可能還會繼續(xù)在北京住下去。( B )句講的是他在北京住過 8 年,現(xiàn)在已經(jīng)不在北京了。
(3)現(xiàn)在完成時(shí)強(qiáng)調(diào)過去發(fā)生的動作對現(xiàn)在的影響和結(jié)果,而一般過去時(shí)與現(xiàn)在沒有聯(lián)系,只是說明某個(gè)動作發(fā)生的時(shí)間是在過去。
比:I have washed the car. 我洗過了車。(看上去很漂亮)
I washed the car a moment ago. 我剛才洗過車了。
She has watered the flowers. 她已經(jīng)澆了花。(不需要再澆了)
She watered the flowers yesterday. 她昨天澆的花。
I have written the letter but I haven't posted it yet. 信我已經(jīng)寫好了,但還沒有寄出。
I wrote the letter last week and I posted it three days ago. 我上周寫的那封信,3天前寄出的。

(3)現(xiàn)在完成時(shí)表示的動作或狀態(tài)延續(xù)到現(xiàn)在并可能延續(xù)下去,而一般過去時(shí)則單純表示過去某段時(shí)間內(nèi)的經(jīng)歷。
比:It has rained for five hours. 雨已經(jīng)下了5個(gè)小時(shí)了。
It rained for five hours yesterday. 昨天下了5個(gè)小時(shí)的雨。
He has waited for her for two hours. 他等她已經(jīng)兩個(gè)小時(shí)了。
He waited for her two hours and then went home. 他等她等了兩個(gè)小時(shí),然后就回家了。
I have reviewed two lessons this morning. 今天上午我已經(jīng)復(fù)習(xí)了兩課。(說話時(shí)還在上午)
I reviewed two lessons this morning. 今天上午我復(fù)習(xí)了兩課。(說話時(shí)已是下午或晚上)
現(xiàn)在完成時(shí)與現(xiàn)在完成進(jìn)行時(shí)相同點(diǎn)
1. 現(xiàn)在完成時(shí)和現(xiàn)在完成進(jìn)行時(shí)都可以表示從過去某一時(shí)刻開始一直延續(xù)到現(xiàn)在的動作.如:
I have worked in this school since 2001.
I have been working here since 2001.
2. 現(xiàn)在完成時(shí)和現(xiàn)在完成進(jìn)行時(shí)都可以表示一段時(shí)間內(nèi)進(jìn)行的動作.例如:
Mr. Smith has taught English for 20 years.
Mr. Smith has been teaching English for 20 years.
以上句子用現(xiàn)在完成時(shí)與現(xiàn)在完成進(jìn)行時(shí),含義上沒有什么差別,兩種時(shí)態(tài)可以互相換.但兩種時(shí)態(tài)也存在有意義上和用法上的差別.

現(xiàn)在完成時(shí)與現(xiàn)在完成進(jìn)行時(shí)不同點(diǎn)
1. 從定義上來看,現(xiàn)在完成時(shí)表示的是已經(jīng)完成的動作或者狀態(tài),常常與already"已經(jīng)"或ever "曾經(jīng)"連用,如:
We have already learnt Module

3.我們已經(jīng)學(xué)習(xí)了第三模塊.
She is the most beautiful girl I have ever seen.她是我見過的最漂亮的女孩.
而現(xiàn)在完成進(jìn)行時(shí)則表示的是從過去某一時(shí)刻開始一直延續(xù)到現(xiàn)在,有可能還要進(jìn)行下去的動作,一般不與already或ever等連用,如:
We have been learning Module

4. 我們一直在學(xué)習(xí)第四模塊.(不一定學(xué)完)
注意下面這組句子含義上的區(qū)別:
I have read the novel. 我看過那本書了. (已看完)
I have been reading the novel. (一直在看,不一定看完)
2. 相對于現(xiàn)在完成時(shí)表示一次性,現(xiàn)在完成進(jìn)行時(shí)可以表示動作的重復(fù).如:
I have met him at the library. (我在圖書館見過他.)
I have been meeting him at the library. (我經(jīng)常在圖書館看見他.)

3.現(xiàn)在完成時(shí)和現(xiàn)在完成進(jìn)行時(shí)都可以表示剛剛結(jié)束的動作,但在含義上有區(qū)別.現(xiàn)在完成時(shí)強(qiáng)調(diào)的是動作的結(jié)果,而現(xiàn)在完成進(jìn)行時(shí)強(qiáng)調(diào)的則是動作的過程.如:
—You look so tired, what have you been doing 你看起來很累,做什么了 (強(qiáng)調(diào)動作)
—We are very tired. We've been cleaning the house. 我們很累,我們剛才在打掃房子.(強(qiáng)調(diào)該動作所導(dǎo)致)
—We've cleaned the house. You may come in now. 我們打掃過房子了,你可以進(jìn)來了.(強(qiáng)調(diào)結(jié)果"房子干凈")

4. 現(xiàn)在完成進(jìn)行時(shí)態(tài)不能用來談某個(gè)動作的具體次數(shù)或幾件事情.這時(shí),我們要用現(xiàn)在完成時(shí)態(tài).如:
I have been drinking five cups of coffee this afternoon.(×)
I have drunk five cups of coffee this afternoon.

5.現(xiàn)在完成時(shí)強(qiáng)調(diào)"事實(shí)";而現(xiàn)在完成進(jìn)行時(shí)則強(qiáng)調(diào)"動作",并且常含有喜悅,憤怒,不滿,厭惡等感情色彩.如:
The lazy boy has lain in bed for a whole day. 這個(gè)懶孩子在床上躺了一天.(強(qiáng)調(diào)事實(shí))
The lazy boy has been lying in bed for a whole day. 這個(gè)懶孩子在床上躺了一天了.(強(qiáng)調(diào)動作,含有對小男孩厭惡的感情色彩)

6. 如果沒有時(shí)間狀語,現(xiàn)在完成進(jìn)行時(shí)有延續(xù)性,現(xiàn)在完成時(shí)沒有.如:
I've been cleaning the house but I still haven't finished.
I've cleaned the house, but I still haven't finished.(×)

時(shí)間狀語
現(xiàn)在完成時(shí)是一個(gè)與過去時(shí)間和現(xiàn)在時(shí)間都有關(guān)系的時(shí)態(tài),因此,具有這樣特征的時(shí)間狀語都可以與現(xiàn)在完成時(shí)連用,具體情況有以下幾種:
1. 與表示一段時(shí)間的狀語連用,如“ for +段時(shí)間”,“ since +時(shí)間點(diǎn)”。例如: We have lived in this city for more than 40 years.
從以上兩個(gè)例句我們可以看出,與表示一段時(shí)間的狀語連用時(shí),謂語動詞常為 stay, live, teach, learn, work, sleep, read, wait, keep 等具有延續(xù)性意義的動詞。

2. 與籠統(tǒng)表示過去時(shí)間的狀語連用,如 already, never, ever, just 等。含有這類時(shí)間狀語的句子,其謂語動詞表示句中的行為或動作發(fā)生在過去,但對現(xiàn)在有影響。例如:I've just found this library book.
have found 這一動作發(fā)生在過去,但影響到現(xiàn)在,即現(xiàn)在圖書館的書在我這兒。
just 所表示的“剛才”是與現(xiàn)在有密切相關(guān)的過去時(shí)間。
How beautifully she sings! I have never heard a better voice.
她唱得多美啊!我從來沒聽到過比這更優(yōu)美的歌喉。
never 表示廣義的過去,而且一直到目前才截止。

3. 與表示包含過去和現(xiàn)在的一整段時(shí)間的狀語連用,如 lately, recently, in the past few years, these few years, these days, up to now, so far 等。例如:
How have you been recently ?
你近來狀況如何?
The famous writer has written a new book in the past two years.
那位著名的作家在過去的兩年里寫了一本新書。
Have you seen her parents these days?
這些天你看見她的父母了嗎?
The Browns have visited a lot of places in China so far.
迄今為止,布朗一家已經(jīng)參觀了中國的許多地方。

注意:現(xiàn)在完成時(shí)不能與單純表示過去時(shí)間的狀語連用,如 yesterday, last week, in 2002, three days ago 等,因?yàn)樗鼈兣c現(xiàn)在毫無關(guān)聯(lián)。比如我們不能說: Han Mei has seen the film two days ago. 因?yàn)?two days ago是單純指過去的一個(gè)時(shí)間點(diǎn),只說明“看”這一動作是在兩天前發(fā)生的,與現(xiàn)在無關(guān)。但是,只要將它改為since two days ago 就可以用在現(xiàn)在完成時(shí)的句子里了,因?yàn)樗呀?jīng)含有從過去到現(xiàn)在的時(shí)間段的意義了。
?