📚
Danh sách bài học
Bài 10B1Hiện tại hoàn thành và Quá khứ

Hiện tại hoàn thành tiếp diễn và hiện tại hoàn thành đơn (I have been doing / I have done)

Present perfect continuous and simple (I have been doing and I have done)

A

Cấu trúc tổng quan

Cả hai thì đều nối quá khứ với hiện tại: tiếp diễn nhấn mạnh quá trình/độ dài, còn đơn nhấn mạnh kết quả, số lượng hoặc trải nghiệm. Ghi nhớ cách tạo và dạng viết tắt của have/has để nói trôi chảy hơn.

have/has + been + V-ing; have/has + V3/V-ed
Chủ ngữTrợ động từDạng viết tắt
IhaveI've
youhaveyou've
wehavewe've
theyhavethey've
he/she/ithashe's/she's/it's
  • I have been studying English for three years.

    Tôi đã học tiếng Anh được ba năm (và vẫn đang học).

    nhấn mạnh quá trình, dùng for

  • She has finished her homework.

    Cô ấy đã làm xong bài tập.

    nhấn mạnh kết quả đã hoàn thành

  • They have been waiting for the bus since 7 a.m.

    Họ đợi xe buýt từ 7 giờ sáng đến giờ.

    since + mốc thời gian

  • He has lost his keys.

    Anh ấy đã làm mất chìa khóa (giờ vẫn chưa tìm thấy).

    kết quả hiện tại

B

Cách dùng 1: Nhấn mạnh quá trình/độ dài (Present perfect continuous)

Dùng cho hành động bắt đầu trong quá khứ và còn đang diễn ra, hoặc vừa diễn ra kéo dài quanh hiện tại. Thường đi với for, since, all morning/week, recently, lately. Có thể dùng khi thấy dấu hiệu của hoạt động (mồ hôi, mùi thức ăn...).

  • I've been working from home since last week.

    Tôi làm việc tại nhà từ tuần trước đến giờ.

    since + mốc

  • We've been waiting for Grab for 20 minutes.

    Chúng tôi đã chờ xe Grab được 20 phút rồi.

    for + khoảng thời gian

  • She has been calling me all morning.

    Cô ấy gọi cho tôi cả buổi sáng nay.

    hành động lặp lại kéo dài

  • It's been raining since noon.

    Trời mưa từ trưa đến giờ.

    thời tiết kéo dài

  • He has been cooking, so the kitchen smells great.

    Anh ấy vừa nấu nướng nên bếp thơm phức.

    dấu hiệu hiện tại của hoạt động

C

Cách dùng 2: Nhấn mạnh kết quả/số lượng/kinh nghiệm (Present perfect simple)

Dùng khi hành động đã hoàn thành và kết quả liên quan đến hiện tại, hoặc nói số lượng/lần đã làm, hoặc nêu trải nghiệm. Thường đi với just, already, yet, ever, never, so far. Với các động từ trạng thái (know, like, believe, own…), ưu tiên thì đơn.

  • I've finished the report.

    Tôi đã hoàn thành bản báo cáo.

    đã xong, có kết quả

  • She has written three emails this morning.

    Sáng nay cô ấy đã viết ba email.

    số lượng trong khoảng thời gian chưa kết thúc

  • We have visited Da Nang twice.

    Chúng tôi đã đến Đà Nẵng hai lần.

    số lần/kinh nghiệm

  • My phone has stopped working.

    Điện thoại của tôi đã ngừng hoạt động.

    kết quả hiện tại

  • He has never tried bún đậu mắm tôm.

    Anh ấy chưa bao giờ thử bún đậu mắm tôm.

    trải nghiệm (never)

D

So sánh: khi nào dùng tiếp diễn và khi nào dùng đơn

Tiếp diễn (have/has been V-ing) khi bạn muốn nhấn mạnh quá trình, còn đang diễn ra, hoặc tác động kéo dài. Đơn (have/has V3) khi bạn muốn nhấn mạnh kết quả đã có, số lượng/lần hoặc trải nghiệm đã tích lũy. Nhiều tình huống dùng được cả hai nhưng nghĩa khác nhau về trọng tâm.

  • I've been reading this book for two days.

    Tôi đọc cuốn sách này được hai ngày rồi (chưa xong).

    nhấn quá trình/độ dài

  • I've read 100 pages of this book.

    Tôi đã đọc được 100 trang của cuốn sách này.

    nhấn kết quả/số lượng

  • She's been cleaning the house, so she's tired.

    Cô ấy dọn nhà nên mệt.

    nhấn hoạt động kéo dài gây mệt

  • She's cleaned the house.

    Cô ấy đã dọn xong nhà.

    nhấn hoàn thành/kết quả

Lỗi thường gặp

I am learning English for three years.I have been learning English for three years.

Không dùng hiện tại tiếp diễn với for/since để nói một khoảng kéo dài đến hiện tại; phải dùng hiện tại hoàn thành (tiếp diễn).

She has been finished the report.She has finished the report.

Cấu trúc đúng của tiếp diễn là have/has been + V-ing; 'finish' diễn tả kết quả đã xong nên dùng hiện tại hoàn thành đơn.

She has known me since two years.She has known me for two years.

Since + mốc thời gian (since 2022), for + khoảng thời gian (for two years). Ngoài ra 'know' là động từ trạng thái, không dùng tiếp diễn.