Hiện tại hoàn thành tiếp diễn (Present perfect continuous)
Hiện tại hoàn thành tiếp diễn (còn gọi là present perfect progressive) dùng HAI trợ động từ cùng một động từ chính: have / has + been + V-ing. Như tên gọi, thì này thường có mối liên hệ với HIỆN TẠI. Ta dùng nó cho hai việc: một hành động bắt đầu trong quá khứ và VỪA MỚI dừng, để lại kết quả bây giờ (I’m tired because I’ve been running); và một hành động bắt đầu trong quá khứ và VẪN ĐANG tiếp diễn, thường kèm for hoặc since (I’ve been reading for two hours).
Công thức theo ngôi
| Chủ ngữ | have/has been | V-ing | Ví dụ |
|---|---|---|---|
| I | have been | waiting | I have been waiting for an hour. |
| You | have been | waiting | You have been waiting for an hour. |
| He | has been | waiting | He has been waiting for an hour. |
| She | has been | waiting | She has been waiting for an hour. |
| It | has been | waiting | It has been raining for an hour. |
| We | have been | waiting | We have been waiting for an hour. |
| You | have been | waiting | You have been waiting for an hour. |
| They | have been | waiting | They have been waiting for an hour. |
Hai cách dùng
| Cách dùng | Ví dụ | Bây giờ |
|---|---|---|
| Việc vừa dừng, còn kết quả | I’m tired because I’ve been running. | đã dừng chạy, nhưng đang mệt |
| Việc vừa dừng, còn kết quả | The floor is wet. Has it been raining? | đã tạnh, nhưng sàn ướt |
| Bắt đầu từ trước, vẫn đang tiếp diễn | I’ve been reading for two hours. | vẫn đang đọc |
| Bắt đầu từ trước, vẫn đang tiếp diễn | We’ve been studying since 8 o’clock. | vẫn đang học |
Ba phần của thì: have + been + V-ing
| Kiểu câu | Công thức | Ví dụ |
|---|---|---|
| + Khẳng định | S + have / has + been + V-ing | She’s been working all day. |
| – Phủ định | S + have / has + not + been + V-ing | She hasn’t been working today. |
| ? Nghi vấn | Have / Has + S + been + V-ing | Has she been working all day? |
Chỉ trợ động từ đầu (have / has) đổi theo chủ ngữ; been và V-ing giữ nguyên.
Quá trình hay kết quả?
| HTHT tiếp diễn — quá trình | HTHT — kết quả | Khác nhau |
|---|---|---|
| I’ve been painting the room. | I’ve painted the room. | Có thể chưa xong ↔ đã sơn xong |
| She’s been reading for hours. | She’s read three chapters. | Đọc bao lâu ↔ đọc được bao nhiêu |
| It’s been raining all day. | It’s rained twice this week. | Kéo dài liên tục ↔ đếm số lần |
Khi nói “bao lâu” ⇒ thường dùng HTHT tiếp diễn; khi nói “bao nhiêu / mấy lần” ⇒ dùng HTHT.
Chủ ngữ + have / has + been + V-ing
Trợ động từ thứ nhất have chia theo chủ ngữ (have, has); trợ động từ thứ hai be luôn ở dạng been; động từ chính luôn ở dạng V-ing. Phủ định: thêm not SAU trợ động từ thứ nhất. Câu hỏi: đảo trợ động từ thứ nhất lên trước chủ ngữ.
- It hasn’t been raining today. — Hôm nay trời không mưa.
- Have they been doing their homework? — Bọn trẻ có đang làm bài tập không đấy?
Viết tắt khi nói
Chủ ngữ + have được viết tắt: I’ve been, she’s been, they’ve been, Lan’s been… Phủ định: haven’t been, hasn’t been.
- Minh’s been helping us a lot recently. — Dạo này Minh giúp chúng tôi rất nhiều.
- I haven’t been sleeping well. — Dạo này tôi ngủ không ngon.
Cách dùng 1 — Việc vừa dừng, để lại kết quả bây giờ
Hành động bắt đầu trong quá khứ và vừa mới dừng; thường có một kết quả nhìn thấy hoặc cảm thấy ĐƯỢC BÂY GIỜ.
- I’m out of breath because I’ve been running. — Tôi thở không ra hơi vì vừa chạy xong.
- Why is the floor wet? Has it been raining? — Sao sàn ướt thế? Trời vừa mưa à?
- You don’t understand because you haven’t been listening. — Bạn không hiểu vì nãy giờ bạn không chịu nghe.
Cách dùng 2 — Việc bắt đầu từ quá khứ và vẫn đang tiếp diễn
Hành động bắt đầu trong quá khứ và VẪN đang diễn ra bây giờ; cách dùng này thường đi với for, since, how long.
- I’ve been reading for two hours. — Tôi đọc được hai tiếng rồi. (vẫn đang đọc)
- We’ve been studying since 8 o’clock. — Chúng tôi học từ tám giờ tới giờ. (vẫn đang học)
- How long have you been learning English? — Bạn học tiếng Anh được bao lâu rồi?
for và since
for + khoảng thời gian (three hours, two months), since + mốc trong quá khứ (7 pm, Friday, I left school) — xem bài for và since.
- She hasn’t been feeling well for two weeks. — Hai tuần nay cô ấy thấy không khoẻ.
- He’s been living in Hue since he left school. — Từ hồi ra trường anh ấy sống ở Huế.
Quá trình (have been doing) hay kết quả (have done)
Dạng tiếp diễn nói về VIỆC LÀM: xong hay chưa không quan trọng, ta nhìn vào dấu vết mà nó để lại. Dạng đơn nói về KẾT QUẢ: việc đã hoàn tất và ta nhìn vào thành phẩm.
- My hands are very dirty. I’ve been repairing my bike. — Tay tôi bẩn lắm. Nãy giờ tôi sửa xe đạp.
- My bike is OK again now. I’ve repaired it. — Xe đạp tôi chạy lại được rồi. Tôi sửa xong rồi.
- Joe has been eating too much recently. He should eat less. — Dạo này Joe ăn nhiều quá. Cậu ấy nên ăn ít lại.
- Somebody has eaten all the chocolates. The box is empty. — Có ai ăn hết sạch sô-cô-la rồi. Hộp rỗng không.
how long dùng tiếp diễn; how many / how much dùng đơn
Hỏi việc đã kéo dài BAO LÂU (và vẫn đang tiếp tục) ⇒ dạng tiếp diễn. Hỏi ĐƯỢC BAO NHIÊU, BAO NHIÊU LẦN (những phần đã làm xong) ⇒ dạng đơn.
- How long have you been reading that book? — Bạn đọc cuốn sách đó bao lâu rồi?
- How many pages have you read? — Bạn đọc được bao nhiêu trang rồi?
- They’ve been playing tennis since 2 o’clock. — Họ chơi quần vợt từ hai giờ tới giờ.
- They’ve played tennis three times this week. — Tuần này họ chơi quần vợt ba lần rồi.
I am doing và I have been doing
Hiện tại tiếp diễn chỉ nói việc ĐANG xảy ra lúc này, không cho biết nó bắt đầu từ bao giờ. Hiện tại hoàn thành tiếp diễn thì nhìn ngược từ bây giờ về trước: việc đã kéo dài một quãng cho tới tận giờ.
- Don’t disturb me now. I’m working. — Đừng làm phiền, tôi đang làm việc.
- I’ve been working hard. Now I’m going to have a break. — Nãy giờ tôi làm việc căng lắm. Giờ tôi nghỉ một lát.
- We need an umbrella. It’s raining. — Phải mang ô thôi. Trời đang mưa.
- The ground is wet. It’s been raining. — Mặt đất ướt. Trời vừa mưa xong.
Lưu ý
- Hãy so sánh: “I’ve been painting the room” (quá trình, có thể chưa xong) và “I’ve painted the room” (đã xong).
- Không dùng thì này với động từ trạng thái: “I’ve known him for years”, không phải “I’ve been knowing”. Riêng want và mean thì dùng được: “I’ve been meaning to phone Anna.”
- Thì này còn dùng cho việc lặp đi lặp lại suốt một quãng thời gian: “She’s been playing tennis since she was eight.”
- Riêng live và work thì dùng dạng nào cũng được: “Julia has been living / has lived here for a long time.” Nhưng có always thì phải dùng dạng đơn: “I’ve always lived in the country”, không nói “always been living”.