문법특강

체계적인 영문법 학습

15

완료 시제의 종류

그때 이미 다 먹은 상태였어, 내일 그가 올 때쯤 나는 모두 끝내놓을 거야! 과거완료부터 미래완료까지, 시제를 자유자재로 구사하는 고급 표현법을 배웁니다.

2025년 10월 17일
33분 소요
New1English
시제
중급
중급문법





⭐ 완료 시제의 종류


완료 시제는 두 시점 사이의 관계를 나타냅니다. 단순히 "언제" 일어났는지가 아니라, 어떤 기준 시점까지의 경험·결과·계속·완료를 표현합니다.



🔹 4가지 완료 시제 한눈에 보기



  • ① 현재완료: have/has + p.p.

  • ② 과거완료: had + p.p.

  • ③ 미래완료: will have + p.p.

  • ④ 완료진행형: have/has/had been + V-ing







1️⃣ 현재완료 (Present Perfect): have/has + p.p.




✅ 완료 — 방금 막 끝난 일


just, already, yet과 함께 자주 사용됩니다.



  • I have just finished my homework. (숙제를 방금 끝냈다)

  • She has already eaten lunch. (그녀는 이미 점심을 먹었다)

  • Have you submitted the report yet? (아직 보고서를 제출했나요?)





🔄 계속 — 과거부터 현재까지 이어지는 상태


for(~동안), since(~이후로)와 함께 사용됩니다.



  • I have lived here for 10 years. (10년 동안 여기 살고 있다)

  • She has worked at this company since 2018. (2018년부터 이 회사에서 일하고 있다)

  • We have known each other for a long time. (우리는 오랫동안 알고 지냈다)





🌏 경험 — 살면서 한 경험 (ever, never, once, before)



  • I have never been to Paris. (파리에 가본 적이 없다)

  • Have you ever tried sushi? (스시를 먹어본 적 있나요?)

  • She has met the president once. (그녀는 대통령을 한 번 만난 적 있다)





📌 결과 — 과거 행동의 현재 결과



  • I have lost my keys. (열쇠를 잃어버렸다 → 지금 없다)

  • He has gone to the US. (그는 미국에 가버렸다 → 지금 여기 없다)

  • The train has left. (기차가 출발했다 → 지금 없다)





❌ 현재완료와 함께 쓸 수 없는 표현


명확한 과거 시점(yesterday, last year, ago, in 2010)과는 함께 쓰지 않습니다.



  • ❌ I have seen him yesterday. (틀림!)

  • ✅ I saw him yesterday. (맞음)

  • ❌ She has arrived two hours ago. (틀림!)

  • ✅ She arrived two hours ago. (맞음)





✏️ 연습문제 — 알맞은 형태를 쓰세요



  1. I ________ (never / eat) Thai food before.

  2. She ________ (live) in Seoul since 2020.

  3. They ________ (just / finish) the presentation.

  4. He ________ (lose) his passport. (결과: 지금 없다)



✅ 정답 보기

  1. have never eaten

  2. has lived

  3. have just finished

  4. has lost








2️⃣ 과거완료 (Past Perfect): had + p.p.




💡 핵심 개념: 과거의 어느 시점보다 더 앞선 과거를 나타냅니다. "대과거"라고도 불립니다.





✅ 과거보다 먼저 일어난 일




  • When I arrived at the station, the train had already left.

    (내가 도착했을 때, 기차는 이미 떠났다 — 기차가 먼저)


  • She had studied English before she moved to the US.

    (미국으로 이사 가기 전에 영어를 공부했었다)


  • By the time he called, I had finished dinner.

    (그가 전화했을 때쯤 나는 이미 저녁을 끝낸 상태였다)





🔄 과거까지 계속된 상태



  • They had been friends for 20 years when they had a fight. (싸우기 전까지 20년간 친구였다)

  • I had never seen snow before I visited Canada. (캐나다 방문 전 눈을 본 적이 없었다)





📌 가정법 과거완료에서도 사용



  • If I had studied harder, I would have passed the exam.

  • (더 열심히 공부했다면, 시험에 합격했을 텐데)





✏️ 연습문제 — 과거완료로 쓰세요



  1. When she got home, her children ________ (already / go) to bed.

  2. I ________ (never / fly) in a plane before that trip.

  3. He was tired because he ________ (work) all night.



✅ 정답 보기

  1. had already gone

  2. had never flown

  3. had worked








3️⃣ 미래완료 (Future Perfect): will have + p.p.




💡 핵심 개념: 미래의 어느 시점까지 완료되어 있을 일을 나타냅니다. by 시간 표현과 자주 함께 쓰입니다.





✅ 미래 기준점까지 완료될 일



  • By next year, I will have graduated from university. (내년이면 대학을 졸업했을 것이다)

  • By the time you arrive, we will have finished cooking. (네가 도착할 때쯤, 우리는 요리를 다 끝내놓을 것이다)

  • By 2030, scientists will have discovered a cure for this disease. (2030년까지 과학자들이 치료법을 발견해 있을 것이다)





📌 자주 쓰이는 시간 표현



  • by + 미래 시점: by tomorrow, by next week, by 2030

  • by the time + 절: by the time you read this

  • in + 기간: in 10 years





✏️ 연습문제 — 미래완료로 쓰세요



  1. By 5 PM, she ________ (finish) her work.

  2. By the time he arrives, we ________ (eat) all the pizza.

  3. In 5 years, I ________ (save) enough money to buy a house.



✅ 정답 보기

  1. will have finished

  2. will have eaten

  3. will have saved








4️⃣ 완료진행형 (Perfect Continuous)




💡 핵심 개념: 완료(have+p.p.) + 진행(be+V-ing) 결합. 어떤 시점까지 계속 진행 중인 동작을 강조합니다.
















종류 형태 예문
현재완료진행have/has been + V-ingI have been studying for 3 hours.
과거완료진행had been + V-ingShe had been waiting for an hour when he arrived.
미래완료진행will have been + V-ingBy June, she will have been teaching for 10 years.




✅ 현재완료진행형 — 지금도 계속 중인 동작



  • I have been learning Korean for 2 years. (2년째 배우고 있다, 지금도 계속)

  • She has been crying. (눈이 빨간 이유: 울고 있었다)

  • We have been waiting here since noon. (정오부터 기다리고 있다)





📌 현재완료 vs 현재완료진행 비교




  • I have read the book. → 책을 다 읽었다 (완료, 결과 강조)

    I have been reading the book. → 책을 읽고 있었다 (과정, 동작 강조)


  • She has lived here for 5 years. → 5년간 살았다 (상태)

    She has been living here for 5 years. → 5년간 살고 있다 (계속되는 동작)





❌ 완료진행형 불가 동사 (상태동사)


know, like, love, hate, believe, want, own, contain, seem 등은 진행형 사용 불가.



  • ❌ I have been knowing her for years. (틀림!)

  • ✅ I have known her for years. (맞음)





✏️ 연습문제 — 완료진행형 쓰기



  1. He ________ (work) on this project since January. (현재완료진행)

  2. They ________ (argue) for two hours before they reached an agreement. (과거완료진행)

  3. By next month, I ________ (study) French for a year. (미래완료진행)

  4. She looks exhausted. She ________ (run). (현재완료진행으로 이유 설명)



✅ 정답 보기

  1. has been working

  2. had been arguing

  3. will have been studying

  4. has been running








📘 핵심 요약


















시제 형태 핵심 용법 예문
현재완료have/has + p.p.완료·계속·경험·결과I have visited London.
과거완료had + p.p.과거보다 더 앞선 과거She had left when I arrived.
미래완료will have + p.p.미래 시점까지 완료I will have finished by then.
현재완료진행have/has been + V-ing지금까지 계속 진행 중I have been waiting for 1hr.
과거완료진행had been + V-ing과거 기준점까지 계속She had been crying.
미래완료진행will have been + V-ing미래까지 계속 진행I will have been studying for 3hr.