Thì hiện tại hoàn thành là gì? Cấu trúc, cách dùng và bài tập

Thì hiện tại hoàn thành là gì? Đây là một thì trong 12 thì cơ bản trong tiếng Anh. Thì hiện tại hoàn thành có công thức và cách dùng phong phú cho các dạng bài tập và các đề thi.

1. The Present Perfect (Thì hiện tại hoàn thành )

1.1. Use (Cách dùng)

Thì hiện tại hoàn thành nói chung là được dùng để nói về những hành động xảy ra trong quá khứ và vẫn còn diễn ra ở hiện tại hoặc có liên hệ hay ảnh hưởng đến hiện tại. 

thi-hien-tai-hoan-thanh-la-gi-cau-truc-cach-dung-va-bai-tap-voh
Thì hiện tại hoàn thành là một thì xuất hiện thường xuyên trong các dạng bài tập.

Cụ thể là thì hiện tại hoàn thành đơn có 7 cách dùng sau: 

Diễn tả hành động xảy ra trong quá khứ, không rõ thời điểm xảy ra lúc nào, nhưng kết quả của hành động này có ảnh hưởng đến hiện tại. 

Ví dụ: He has done his homework (so he can play computer games now).

{Anh ấy đã làm xong bài tập về nhà (nên bây giờ anh ấy có thể chơi game).}

Diễn tả hành động (vừa mới) xảy ra nhưng thời gian không nêu rõ; thường dùng với các trạng từ chỉ thời gian bất định (indefinite time adverbs) như là: just (vừa mới), ever (đã bao giờ), never (chưa bao giờ), before (trước đây), already (đã rồi), not…..yet (chưa), recently (gần đây), lately (gần đây, mới đây)

Ví dụ: I’ve just had breakfast, so I’m not hungry.

(Tôi vừa ăn sáng xong, thế nên tôi không đói) 

Diễn tả hành động bắt đầu trong quá khứ nhưng chưa kết thúc và có thể tiếp tục trong tương lai; thường dùng với các trạng từ bất định như: so far (cho tới nay), up to now/ up till now (cho tới nay), how long (bao lâu), until now (cho đến bây giờ)

Ví dụ: My uncle is a novelist. He’s written twenty books sofar. 

(Chú tôi là một tiểu thuyết gia. Cho tới nay chú ấy đã viết hai mươi cuốn sách.)

Diễn tả hành động bắt đầu trong quá khứ và kéo dài đến hiện tại hoặc có thể còn tiếp tục xảy ra trong tương lai. Cách nói này thường dùng với các từ chỉ thời gian như: ‘for’ (= trong thời gian bao lâu) hoặc ‘since’ (= kể từ khi nào đó cho tới bây giờ)

Chú ý: For + khoảng thời gian từ quá khứ đến hiện tại. (for a year, for a long time…)

Since + mốc thời gian trong quá khứ. (since 1992, since I left school..)

Ví dụ:

My grandparents have lived in Hue city for years.(They still live there now.)

(Ông bà tôi sống ở thành phố Huế trong nhiều năm- Bây giờ họ vẫn còn sống ở đó.)

She has worked at the bank since 2000.

(Cô ấy làm việc tại ngân hàng từ năm 2000) (Có nghĩa là cô bắt đầu làm việc tại ngân hàng từ năm 2000 và bây giờ vẫn còn làm ở đấy.)

Diễn tả hành động xảy ra trong khoảng thời gian chưa kết thúc ở thời điểm hiện tại. Những cách nói thời gian chưa kết thúc gồm có: today (hôm nay), this morning/ afternoon…(sáng nay/ chiều nay..)this week/ month/year/ season..) (tuần này/tháng này/năm nay/mùa này..)

Ví dụ:

We haven’t seen our professor today.

Hôm nay chúng tôi chưa gặp giáo sư của chúng ta. (‘hôm nay’ là khoảng thời chưa kết thúc, có thể còn vài giờ nữa mới sang ngày mới)   

She has changed her hairstyle three times this year.

Cô ta thay đổi kiểu tóc ba lần trong năm nay. (‘this year’ là khoảng thời gian chưa hết năm nay, có thể cô ta cũng còn thay đổi kiểu tóc nữa.)

Diễn tả một hành động xảy ra nhiều lần từ quá khứ đến hiện tại.

Ví dụ:

They have climbed up this mountain three times. 

(Họ đã leo lên núi này ba lần rồi.)

We have eaten at that restaurant many times. 

(Chúng tôi đã đi ăn tại nhà hàng đó nhiều lần rồi.) 

Ngoài ra còn  có vài cách nhận biết trong thì hiện tại hoàn thành đơn (present perfect simple)

a)  This/ It is the first (second / third…)  time (Đây là lần đầu tiên/ thứ hai/ thứ ba….)

Ví dụ: It is the first time I have tried this kind of food.    

b)  for the past/ for the last + khoảng thời gian từ quá khứ đến hiện tại.

Ví dụ: The cost of living in this city has risen for the past five years. 

(Giá sinh hoạt trong thành phố này gia tăng trong 5 năm qua.)     

c) Chúng ta cũng dùng thì hiện tại hoàn thành sau cách nói “This is the + superlative adjective….” (Đây là…nhất mà ai đã từng….). Trong cách nói này chúng ta có thể thêm “ever”, chú ý không được dùng “never”.

Ví dụ: This is the worst problem we’ve ever experienced. 

We have never experienced a worse problem before.

(Đây là vấn đề tệ nhất mà chúng tôi đã từng trải qua.)

d) “Have been to” và “Have gone to”

Khi ta muốn nói ai đó đã từng có lần đi đâu (bây giờ về rồi) ta dùng thì hiện tại hoàn thành với dạng “Have/Has been to” 

Ví dụ: Have you ever been to Cuc Phương National Park?        

(Bạn có bao giờ đến công viên quốc gia Cúc Phương chưa?)

Khi ta muốn nói người nào đã đi đến nơi nào, và hiện thời  đang ở đó. Ta dùng thì hiện tại hoàn thành với dạng “Have/ Has gone to” 

Ví dụ: The Greens are not in Ho Chi Minh city. They’ve gone to Ha Noi.    

1.2. Công thức

Câu khẳng định

Ký hiệu V3 (Là quá khứ phân từ của  động từ. Ví dụ: động từ “drive” có quá khứ phân từ hay V3 là “driven”)

Công thức S + HAVE/ HAS + V3/V-ed (pp) (past participle) (quá khứ phân từ)
CHÚ Ý: cách viết tắt của động từ: have/has cùng với đại từ nhân xưng trong câu ‘present perfect’

He/ She/ It/danh từ số ít/ danh từ không đếm được + has + V3/V-ed (pp)

I/ We/ You/They/ danh từ số nhiều + have + V3/V-ed (pp)

a) I’ve/You’ve/We’ve/They’ve eaten lunch. (Pronoun + have = ‘ve)

b) She’s/He’s eaten lunch.(Pronoun + has = ‘s )

c) It’s been cold for the last three days       

Ví dụ

It has rained since 2 pm. (Trời mưa từ 2 giờ chiều) 

I have studied English for five years. (Tôi học tiếng  Anh dược 5 năm rồi)

Câu phủ định

Công thức S + have/ has not + V3/V-ed (pp)
 

He/She/It/ Danh từ số ít/Danh từ không đếm được + has +not +V3/V-ed

I/We/You/They/Danh từ số nhiều + have + not + V3/V-ed
Chú ý

has  not = hasn’t

have not = haven’t

Ví dụ

She has not prepared for dinner since 6.30 p.m.

(Cô ấy vẫn chưa chuẩn bị cho bữa tối.)

Câu nghi vấn/ Câu nghi vấn sử dụng trợ động từ (Câu hỏi Yes/No)

Công thức

Q: Have/Has + S + V3/V-ed?

A: Yes, S+ have/has +V3/V-ed

No, S + haven’t/ hasn’t + V3/V-ed

Ví dụ

Q: Have you ever travelled to America? 

(Bạn đã từng du lịch tới Mỹ bao giờ chưa?)

A: Yes, I have / No, I haven’t.

Câu hỏi với dạng Wh- question

Công thức Wh + have/ has + S + V3/ V-ed?
Ví dụ

What have you done with these ingredients? 

(Bạn làm gì với những nguyên liệu này?)

How have you solved this difficult Math question?

(Bạn làm thế nào để giải được câu hỏi toán khó này?)

How long has your younger sister studied at this school?

(Em gái bạn học tại trường này bao lâu rồi?)

2. So sánh giữa Thì hiện tại hoàn thành tiếp diễn (Present Perfect Progressive) và Thì hiện tại hoàn thành (Present Perfect)

Present perfect progressive Present Perfect

Thì hiện tại hoàn thành tiếp diễn thường được dùng để diễn tả sự liên tục của một hành động. Chúng ta thường quan tâm tới hành động đó xảy ra trong bao lâu (How long?), và chúng ta thường dùng “for” hoặc “since” với thời gian. Chúng ta không thể dùng thì hiện tại hoàn thành tiếp diễn để nói “Người  nào đã làm được bao nhiêu việc (How many things?/ How much?) hoăc đã làm việc gì bao nhiêu lần (How many?)

Thì hiện tại hoàn thành có thể dùng để diễn tả “người nào đã làm được bao nhiêu việc” (How many things?/ How much?), hoặc  “đã làm việc gì bao nhiêu lần” (How many times?)

Ví dụ:

Rita and Josh are talking on the phone. They have been talking on the phone for twenty minutes. 

Ann is sitting in class right now. She has been sitting here since one o’clock.

I see that you are wearing  glasses. How long have you been wearing glasses?

Ví dụ: 

How many books has he written?

How much money have you spent on this project? 

I have been in Europe many times. 

We have visited Korean several times.

Mary has designed twenty new styles of dress so far.

Thì hiện tại hoàn thành tiếp diễn thường được  dùng để nói hành động liên tục xảy ra tạm thời, chứ không xảy ra thường xuyên và lâu dài.

Thì hiện tại hoàn thành được dùng để diễn tả hành động kéo dài và gần như thường xuyên.

Ví dụ: 

It has been raining hard all day. (It is still raining hard right now.)

(Trời mưa lớn suốt cả ngày.)

We have been living with our aunt just for a few weeks. 

(Chúng tôi ở với dì của chúng tôi chỉ vài tuần) 

** CHÚ Ý: Với một số động từ như: ( live, work, teach), có một ít hay không có sự khác biệt nào trong ý nghĩa giữa hai thì khi “since” hoặc “for” được sử dụng.

Ví dụ:

My uncle has devoted all his life to the national revolution.

(Chú tôi đã cống hiến cả cuộc đời cho cuộc cách mạng dân tộc.)

My parents have worked for a financial office for a long time.

(Bố mẹ tôi đã làm việc ở văn phòng tài chính trong một khoảng thời gian dài).

Thì hiện tại hoàn thành tiếp diễn có thể diễn tả hành động đã hoàn tất hoặc vẫn còn tiếp tục.

Thì hiện tại hoàn thành được dùng để nói một hành động đã hoàn tất. 

Ví dụ:

The workmen have been decorating the house. (Maybe they have finished it, maybe they have not.)

(Những người thợ đã trang trí ngôi nhà. Có thể họ đã trang trí xong, cũng có thể họ chưa làm xong.)

Ví dụ:

The workmen have decorated the house. (They have finished it.)

( Những người thợ đã trang trí xong ngôi nhà.)

3. Thì hiện tại hoàn thành (Present Perfect) và Thì quá khứ đơn (Past Simple)

Present perfect Past simple

Chúng ta dùng thì hiện tại hoàn thành để nói một hành động bắt đầu trong quá khứ và còn tiếp tục đến hiện tại. 

Chúng ta dùng thì quá khứ đơn để nói một hành động bắt đầu và kết thúc trong quá khứ. 

Ví dụ:

Mr. Brown has worked in this factory for eight years. (= He still works here now.)

(Ông Brown đã làm trong xí nghiệp này được tám năm- Bây giờ ông ấy vẫn còn làm ở đây.)

Wayne has played for M.U for four years. (He still plays for M.U now.)

(Wayne đã chơi cho câu lạc bộ M.U. được bốn năm. Anh ấy bây giờ vẫn còn chơi cho M.U.)

The car has broken down. (so it is out of action now.)

I have had this motorbike for years. (I have it now.)

Ví dụ:

Mr. Brown  worked in this factory for eight years. (= He doesn’t work there now.)

(Ông Brown đã làm trong xí nghiệp này được tám năm Hiện giờ ông ấy không còn làm ở đó nữa.)

Wayne played for Everton for three years.(= He doesn’t play for Everton now.)

(Wayne đã chơi cho Everton ba năm. Hiện giờ anh ấy không chơi cho Everton nữa. ) 

The car broke down. (It may be all right now.)

I had that motorbike for years.  (Then I sold it.)

Chúng ta dùng thì hiện tại hoàn thành để nhấn mạnh hành động đã xảy ra, chứ không chú trọng thời gian. Do đó chúng ta không dùng thời gian xác định (definite time), mà chỉ có thể dùng thời gian xác định (indefinite time) như là: already, recently, ever, never, several, once….

Chúng ta thường dùng quá khứ đơn với thời gian xác định rõ (definite time) như là: yesterday, last week/year/month, three years ago, in 2006…

Ví dụ:

We’ve only been to Scotland once. 

(Chúng tôi chỉ đến Scotland một lần.)

Have you ever visited our showroom?

(Bạn có bao giờ  viếng thăm phòng trưng bày của chúng tôi chưa?)

Ví dụ:

I went to Scotland once – in 2002.

(Tôi đã đi đến Scotland một lần vào năm 2002.)

Did you visit our showroom yesterday?

(Hôm qua bạn đã viếng thăm phòng trưng bày của chúng tôi rồi phải không?)

Chúng ta dùng thì hiện tại hoàn thành với thời gian chưa kết thúc (unfinished time) như là: today, this morning, this week, this month, this year, ….

Chúng ta dùng thì quá khứ đơn để nói về  thời gian đã kết thúc (finished time) 

Ví dụ:

It has been windy this morning. (The morning is not yet over.)

(Sáng nay trời đã có gió. Hiện vẫn còn trong sáng nay)

I’ve watched a lot of sports this week. (This week is not  yet over.)

(Tuần nay tôi xem thể thao nhiều. Tuần này chưa qua.)

Ví dụ:

It was windy this morning. (It is now afternoon or evening.) 

(Sáng nay trời  đã có gió.- Bây giờ thì trời đã vào chiều hoặc tối)

I watched a great game this week. (earlier in the same week) 

(Tuần này tôi xem nhiều trò chơi. Đây là vào đầu trong tuần bây giờ không xem nữa.)

4. Practice (Luyện tập)

Exercise 1: Cho dạng đúng của các động từ trong ngoặc. 

1) He (be) ……………. at his computer for seven hours. 

2) She (not/have) …………….. any fun for a long time. 

3) My father (not/play) ……………. any sport since last year. 

4) I’d better have a shower. I (not/have) ………… one since Thursday.

5) I don’t live with my family now and we (not/see)………..each other for five years. 

6) I ………just (realize) ………that there are only for weeks to the end of term. 

7) She (finish) ……………..reading two books this week. 

8) How long ………….. (you/know) …………each other?

9) ………….(you/take) ……………many photographs?

10) …..he (eat) …………at the King Power Hotel yet?

11) They (live) …………. ..here all their life.

12) How many hotels …………….the milkman (leave)…………?. He (leave) ………..six.

13) I (buy) ……………….a new carpet. Come and look at it. 

14) She (write)…………..three books about her wildlife. 

15) We (finish) ……………….one English course.

Exercise 2: Cho dạng đúng của thì hiện tại hoàn  thành hoặc hiện tại hoàn thành tiếp diễn. 

1) It (snow) ………….all day. I wonder when it will stop.

2) We (have)…three major snowstorms so far this winter. I wonder how many more we will have. 

3) It’s ten P.M. I (study) ……………..for two hours and probably won’t finish until midnight. 

4) I (write) ……………..them three times, but I still haven’t received a reply. 

5) The telephone (ring) ……. four times in the last hour, and each time it has been for my office mate. 

6) The telephone (ring) ……………..for almost a minute. Why doesn’t  someone answer it? 

7) A: (you, be) ………………………able to reach Both on the phone yet?

B: Not yet. I (try) …………………for the last twenty minutes, but all I get is a busy signal.

8) A: Hi, Jenny, I (see, not) ……………………you for weeks.What (you, do)…………..lately.

B: Studying.

9) A: What’s the matter? Your eyes are red and puffy. (you, cry)…………………….?

10) The little girl is dirty from head to foot because she (play) ……………….in the mud.

Exercise 3: Chia động từ trong ngoặc theo đúng thì hiện tại hoàn thành hoặc quá khứ đơn. 

1) I like Paris very much, but I ……………..(never be) there. 

2) I’m sorry, but our director ………………(go) on holiday three days ago. 

3) ……………..(you hear) their new CD? It’s the best they’ve ever made.

4) I ………………(read) the book three times. It’s a really interesting story. 

5) Sue ………………(leave) her office early yesterday.

6) ……………(you see) the film on TV last night?

7) It’s surprisingly delicious! I ………….(never eat) such good food before. 

8) When ……………….(Karen arrive) in this town?

9) We were in that coastal town last weekend. We ……………..(eat) lots of seafood there. 

10) …………….(you see) Spielberg’s new film? I think it’s even better than his last one.

Exercise 4: Viết lại các câu sau sao cho không thay đổi nghĩa với những câu đầu. 

1) The last time she came back to her hometown was four years ago. 

She hasn’t ...

2) He started working as a bank clerk three months ago. 

He has ...

3) It has been five years since we first flew to Singapore. 

We have ...

4) I last had my cut in November. 

I haven’t ...

5) The last time we called each other was 5 months ago. 

We haven’t ...

6) It is a long time since we last met. 

We haven’t ...

7) When did you have it? 

How long ...

8) This is the first time I have eaten such a delicious meal. 

I have never ...

9) I haven’t seen him for eight days. 

The last ...

10) Today is Saturday. I haven’t taken a bath since Wednesday. 

It is ...

Exercise 5. Viết lại những câu sau sao cho nghĩa không thay  đổi, dựa vào từ gợi ý trong ngoặc đơn. 

1) She started to live in Hanoi two years ago. (for)

2) He  began to study English when he was young. (since) 

3) I have never ridden on a camel before. (This is) 

4) I have never seen such a beautiful girl before. (She is) 

5) This is the best novel I have ever read. (before)

Exercise 6: Viết lại các câu sau dựa trên các từ cho sẵn có sử dụng thì hiện tại hoàn thành. 

1) We/ not eat/ out/ since/ Mon’s birthday. 

2) How/ long/ you/ live/ here? 

3) you/ ever/ been/ Russia? 

4) She / not/ meet/ kids/ since Chrismas. 

5) They/ repair/ lamps/ yet?     

ĐÁP ÁN

Exercise 1: Cho dạng đúng của các động từ trong ngoặc.

1) has been

2) hasn’t had

3) hasn’t played

4) haven’t had

5) haven’t seen

6) have….realized

7) has finished

8) have ….known

9) Have  you taken

10)Has he eaten

11) have lived

12) has …left; has left / left

13) have bought

14) has written

15) have finished

Exercise 2: Cho dạng đúng của thì hiện tại hoàn  thành hoặc hiện tại hoàn thành tiếp diễn.

1) has been snowing

2) have had

3) have been studying

4) have written

5) has rung

6) has been ringing

7) have you been ……have been trying

8) haven’t seen…….have been doing

9) have you been crying    

10) has been playing    

Exercise 3: Chia động từ trong ngoặc theo đúng thì hiện tại hoàn thành hoặc quá khứ đơn.  

1) have never been

2) went

3) Have you heard

4) have read

5) left

6) Did you see

7) have never eaten

8) Did Karen arrive

9) ate

10) Have you seen    

Exercise 4: Viết lại các câu sau sao cho không thay đổi nghĩa với những câu đầu. 

1) She hasn’t come back home for 4 years.

2) He has worked as a bank clerk for 3 months.

3) We have not flown to Singapore for 5 years. 

4) I haven’t had my hair cut since November.

5) We haven’t called each other for 5 months.

6) We haven’t met each other for a long time,

7) How long have you had it?

8) I have never had such a delicious meal.

9) The last time I saw him was 8 days ago. 

10) Today is Saturday. I haven’t taken a bath since Wednesday./ (It is three days since I last took a bath.) 

Exercise 5: Viết lại những câu sau sao cho nghĩa không thay  đổi, dựa vào từ gợi ý trong ngoặc đơn.

1) She has lived/has been living in Hanoi for 2 years. 

2) He has studied/ has been studying English since he was a young man. 

3) This is the first time I have ridden on a camel. 

4) She is the most beautiful girl (that) I have ever seen. 

5) I have never read such a good novel before.     

Exercise 6: Viết lại các câu sau dựa trên các từ cho sẵn có sử dụng thì hiện tại hoàn thành. 

1) We haven’t eaten out since Mom’s birthday.

2) How long have you lived here?

3) Have you ever been to Russia?

4) She hasn’t met her kids  since Christmas.

5) Have they repaired the lamps yet?

-----------------------------------

Hy vọng bài viết và các bài tập trên sẽ giúp các em có thể hiểu được thì hiện tại hoàn thành là gì, cũng như cấu trúc và cách dùng của thì này trong tiếng Anh.

Người biên soạn:

Giáo viên: Trần Thị Sâm

Trường THCS và THPT Nguyễn Khuyến