現(xiàn)在完成進(jìn)行時(shí)表示過去發(fā)生的動作或狀況一直持續(xù)到現(xiàn)在,這個(gè)動作可能仍在繼續(xù)進(jìn)行或剛剛結(jié)束?,F(xiàn)在完成進(jìn)行時(shí)由“have/has + been + 現(xiàn)在分詞”構(gòu)成。
1.1 現(xiàn)在完成進(jìn)行時(shí)的構(gòu)成
肯定句:主語 + have/has + been + 現(xiàn)在分詞...
否定句:主語 + have/has + not + been + 現(xiàn)在分詞...
疑問句:Have/Has + 主語 + been + 現(xiàn)在分詞...?
疑問代詞/疑問副詞 + have/has + 主語 + been + 現(xiàn)在分詞...?
1.2 現(xiàn)在完成進(jìn)行時(shí)的肯定句
句型:主語 + have/has + been + 現(xiàn)在分詞...
現(xiàn)在完成進(jìn)行時(shí)的肯定句由“助動詞have/has + been(been是be動詞的過去分詞)+ 現(xiàn)在分詞”構(gòu)成:
I've been trying to find out her telephone number.我一直在查問她的電話號碼。
They have been widening the road.他們在拓寬這條路。
She is very tired. She's been typing letters all day.她很累了。她整天都在錄入信件。
1.3 現(xiàn)在完成進(jìn)行時(shí)的否定句
句型:主語 + have/has + not + been + 現(xiàn)在分詞...
現(xiàn)在完成進(jìn)行時(shí)的否定句是在助動詞have/has后加not,之后是“be動詞的過去分詞been + 現(xiàn)在分詞”:
I've not been feeling very well for the past few days.這幾天以來,我一直感到不太舒服。
It hasn't been working properly for three weeks.它已有3個(gè)星期運(yùn)作不正常了。
1.4 現(xiàn)在完成進(jìn)行時(shí)的一般疑問句
句型: Have/Has + 主語 + been + 現(xiàn)在分詞...?
回答方式:Yes,主語 + have/has(been + 現(xiàn)在分詞...).
No,主語 + have/has + not(been + 現(xiàn)在分詞...).
現(xiàn)在完成進(jìn)行時(shí)的一般疑問句是將助動詞have/has置于主語之前(大寫have/has的第一個(gè)字母),在句尾加問號;這種語序是倒裝語序:
Have you been writing books for long? 你寫書已經(jīng)很長時(shí)間了嗎?
Have you been working all morning? —Yes,we've been working4hours without a break.你們一上午都在工作嗎? ——是,我們連續(xù)工作了4個(gè)小時(shí)沒有休息。
1.5 現(xiàn)在完成進(jìn)行時(shí)的特殊疑問句
句型:疑問代詞/疑問副詞 + have/has + 主語 + been + 現(xiàn)在分詞...?
現(xiàn)在完成進(jìn)行時(shí)的特殊疑問句是將疑問代詞/疑問副詞置于助動詞have/has之前(have/has的第一個(gè)字母無需大寫),和一般疑問句差不多;這種語序是倒裝語序。就主語提問時(shí),將疑問代詞或帶有疑問限定詞的名詞詞組置于助動詞have/has之前,在句尾加問號;這種語序是陳述句語序:
You look dirty. What have you been doing? —I've been cleaning the garage.你看上去很臟,干什么了? ——我一直在清掃車庫。
You've taken your time! What on earth have you been doing? 你可真夠慢的!你到底一直在干什么?
1.6 現(xiàn)在完成進(jìn)行時(shí)的用法
1.表示過去發(fā)生并持續(xù)到現(xiàn)在的動作
現(xiàn)在完成進(jìn)行時(shí)表示現(xiàn)在以前這一段時(shí)間里一直在進(jìn)行的一個(gè)動作,這個(gè)動作可能仍在進(jìn)行,也可能停止了一會兒:
How long have you been learning English? 你學(xué)習(xí)英語多久了?
How long has it been snowing? 雪下多久了? (還在下雪)
How long have you been studying here? —I've been studying here for five years.你在這里學(xué)習(xí)多久了? ——我在這里學(xué)習(xí)了5年了。(未間斷過)
2.表示現(xiàn)在經(jīng)常重復(fù)的動作
Jack has been phoning Jane every night for the last week.上星期杰克天天晚上給簡打電話。
We've been seeing quite a lot of each other recently.最近我們常常見面。
3.用于得出結(jié)論
現(xiàn)在完成進(jìn)行時(shí)可以表示根據(jù)直接或間接的證據(jù)而得出結(jié)論:
His eyes are red. He has been working too hard recently.他眼睛紅了,準(zhǔn)是最近工作太緊張了。
1.7 現(xiàn)在完成進(jìn)行時(shí)與現(xiàn)在完成時(shí)的區(qū)別
現(xiàn)在完成進(jìn)行時(shí)強(qiáng)調(diào)動作在某一時(shí)刻內(nèi)一直在進(jìn)行,而且動作現(xiàn)在有結(jié)果。到目前為止,該動作可能已不再繼續(xù)進(jìn)行,也可能還在繼續(xù)進(jìn)行,這要根據(jù)上下文來確定。句子中常含有“all + 表示時(shí)間的詞語”,如all day(一整天),all morning(一上午),for(有……多久)和since(自……以來)?,F(xiàn)在完成進(jìn)行時(shí)通常表示尚未完成的動作;現(xiàn)在完成時(shí)則表示已完成的動作。有些動詞如learn(學(xué)習(xí)),lie(躺),live(居?。?,rain(下雨),sleep(睡),study(學(xué)習(xí)),wait(等候),work(工作)等本身就有持續(xù)性,其現(xiàn)在完成進(jìn)行時(shí)形式和現(xiàn)在完成時(shí)形式可以互換,惟一的區(qū)別是前者更強(qiáng)調(diào)動作的持續(xù)性:
Where have you been? What have you been doing? 你到哪里去了? 干什么去了?
I've been doing my homework.我一直在做作業(yè)。(還在做)
I've finished my homework.我已做完作業(yè)了。(已完成)
We've been talking to him all morning.我們今天一上午都在同他談話。(可能還沒談完)
We've talked to him this morning.我們今天上午同他談過話。 (已談完)
現(xiàn)代英語,特別是口語,對于像lie(躺),sit(坐),stay(暫?。?,wait(等候)等動詞,用現(xiàn)在完成進(jìn)行時(shí)比用現(xiàn)在完成時(shí)更合習(xí)慣:
He has been sitting there studying all evening.他整個(gè)晚上都坐在那兒學(xué)習(xí)。
I've been waiting for you since morning.我從上午一直在等你。
We've been staying in a hotel since we came here.自從到這里以后,我們一直住在旅館。