現(xiàn)在完成時(shí)用來表示之前已發(fā)生或完成的動(dòng)作或狀態(tài),其結(jié)果的確和現(xiàn)在有聯(lián)系。動(dòng)作或狀態(tài)發(fā)生在過去但它的影響現(xiàn)在還存在;也可表示持續(xù)到現(xiàn)在的動(dòng)作或狀態(tài)。
現(xiàn)在完成時(shí)用法1:表示過去發(fā)生的動(dòng)作或事情,對(duì)現(xiàn)在造成的影響。
2:表示從過去開始發(fā)生的動(dòng)作持續(xù)到現(xiàn)在,有可能馬上結(jié)束,但也有可能繼續(xù)下去。
3:現(xiàn)在完成時(shí)的動(dòng)詞必須具有可持續(xù)性,至少是能重復(fù)一次以上的動(dòng)作。

現(xiàn)在完成進(jìn)行時(shí)(Present perfect continuous)
主語+have/has+been+動(dòng)詞-ing
(一)表示從過去某時(shí)開始一直持續(xù)到現(xiàn)在的動(dòng)作,并且還將持續(xù)下去。
(二)表示在說話時(shí)刻之前到現(xiàn)在正在進(jìn)行的動(dòng)作。
(三)有些現(xiàn)在完成進(jìn)行時(shí)的句子等同于現(xiàn)在完成時(shí)的句子。
(四)大多數(shù)現(xiàn)在完成進(jìn)行時(shí)的句子不等同于現(xiàn)在完成時(shí)的句子。
(五)表示狀態(tài)的動(dòng)詞不能用于現(xiàn)在完成進(jìn)行時(shí)。
(六)一些現(xiàn)在完成時(shí)的句子也與現(xiàn)在完成進(jìn)行時(shí)的句子含義相同
(七)表示現(xiàn)在以前一直在進(jìn)行的動(dòng)作強(qiáng)調(diào)動(dòng)作的未完成性

1)這兩個(gè)時(shí)態(tài)的主要差別是,現(xiàn)在完成時(shí)表示動(dòng)作業(yè)已完成, 而完成進(jìn)行時(shí)卻不一定如此:
I’ve made a cake. 我做了一個(gè)蛋糕。(已做好)
I’ve been making a cake. 我一直在做一個(gè)蛋糕。 (不一定做好了)
She’s painted a picture. 她畫了一幅畫。(已畫好)
She’s been painting a picture. 她在畫一幅畫。(可能還沒畫好)
They’ve built a bridge. 他們建了一座橋。(已建好)
They’ve been building a bridge. 他們一直在建一座橋。(可能還在建)
He’s written a novel. 他寫了一部小說。(已完成)
He’s been writing a novel. 他在寫一部小說。(可能尚未完成)
2)許多靜態(tài)動(dòng)詞都只能用于完成時(shí)而不能用于完成進(jìn)行時(shí):
I’ve known that for a long time. 這事我已經(jīng)知道很久了。
The strike has lasted six months. 這次罷工已經(jīng)持續(xù)了6個(gè)月。
Nobody has seen him since last week. 從上周起就沒人見到過他。
We’ve had terrible weather for nearly two weeks. 幾乎有兩星期天氣都很惡劣。
They’ve owned the house for many years. 這房子他們已經(jīng)擁有許多年了。
I’ve always thought you’re right. 我一向認(rèn)為你是對(duì)的。
但當(dāng)意思發(fā)生轉(zhuǎn)變時(shí)也可能用于完成進(jìn)行時(shí):
I’ve been thinking of doing so for a long time. 我好久以來一直想這樣做。
Tom has been seeing about a work permit for you. 湯姆一直在設(shè)法幫你取得工作許可證。
Which judge has been hearing the case? 哪位法官在審這個(gè)案子?
She has been having a tooth out. 她在拔牙。
The children have been looking forward to this holiday for months. 孩子們好幾個(gè)月來一直盼望著這個(gè)節(jié)日。
want 這個(gè)動(dòng)詞有時(shí)可用于完成進(jìn)行時(shí),表示“一直想”:
You’re the very man I’ve been wanting to meet. 你正是我一直想見的人.
3) 有少數(shù)動(dòng)詞用兩種時(shí)態(tài)都可以,意思差別不大,如:
They have been working very well this term. 這學(xué)期他們學(xué)習(xí)很好。
They have worked very well this term.

It has been raining for two hours. 下了兩個(gè)小時(shí)的雨。
It has rained for two hours.

I have been hearing from her regularly. 我定期收到她的來信。
I have heard from her regularly.

We have looked for mushrooms but have not found any. 我們找尋蘑菇但一無所獲。
We have been looking for mushrooms but have not found any.

強(qiáng)調(diào)時(shí)間長(zhǎng)度用完成進(jìn)行時(shí)比較好:
I’ve been coughing all night. 我咳了一整夜。(比I’ve coughed all night. 更能強(qiáng)調(diào)咳得久)
All the time she’s been sitting there in silence. 她一直靜坐在那里。
All these years we’ve been trying to get in touch with him. 這些年來我們一直在設(shè)法和他聯(lián)系。
He’s been hoping for a raise in salary all the time. 他一直盼著加薪。