가정법 직설법 차이, 같은 if인데 시제가 달라지는 이유
“내일 비가 오면 집에 있을게”와 “내가 새라면 너에게 날아갈 텐데”는 둘 다 ‘~라면’으로 시작합니다. 하지만 앞의 말은 실제로 일어날 수 있는 일이고, 뒤의 말은 처음부터 불가능한 상상이죠.
영어는 이 차이를 동사의 시제로 표시합니다. 오늘 다룰 주제는 가정법 직설법 차이입니다. 같은 if를 쓰는데도 왜 한쪽은 현재형, 다른 쪽은 과거형을 쓰는지 원리로 살펴보겠습니다.
현실과 상상을 섞어 버린 문장
if를 ‘만약 ~라면’으로만 외우면 현실의 조건과 불가능한 상상을 같은 형태로 쓰게 됩니다. 아래 문장들을 볼까요.
어색한 문장과 틀린 문장If I am a bird, I will fly to you. (어색함)
If I had a car, I will drive you home. (틀림)
첫 문장은 문법 규칙에는 맞지만, 내가 새일 가능성이 실제로 있다는 듯이 말하는 셈이라 어색합니다. 두 번째 문장은 if절은 과거형으로 상상을 표시했는데 주절은 will로 현실을 말해 앞뒤가 맞지 않죠.
두 문장을 고치려면 먼저 이 말이 현실의 조건인지, 사실과 반대되는 상상인지를 정해야 합니다. 그 선택이 바로 직설법과 가정법의 갈림길입니다.
가정법 직설법 차이의 원리
직설법: 있는 그대로의 현실
직설법은 사실이나 실제로 일어날 수 있는 일을 있는 그대로 말하는 방식입니다. 조건문이라도 그 일이 일어날 가능성이 열려 있으면 직설법을 쓰고, 시제도 실제 시간에 맞춥니다.
직설법 조건문If it rains tomorrow, I will stay home.
If you heat ice, it melts.
가정법: 현실과 거리를 둔 상상
가정법은 사실과 반대되거나 거의 불가능한 일을 상상하는 방식입니다. 이때 영어는 동사의 시제를 한 칸 과거로 옮깁니다. 지금의 일인데 과거형을 쓰는 것이죠.
가정법 문장If I were a bird, I would fly to you.
If I had a car, I could drive you home.
왜 과거형일까요? 과거는 지금에서 떨어진 시간입니다. 이 ‘떨어져 있음’을 현실과의 거리로 빌려 써서 지금 현실이 아니다라는 신호를 보낸다고 설명할 수 있습니다. 가정법 직설법 차이는 결국 이 거리를 두느냐 두지 않느냐의 차이입니다.
묻고 답하는 방식으로 풀어 볼까요. “내가 차가 있다면 데려다줄 텐데. (그럼 차가 있어?) 아니, 없어. 그러니까 못 데려다줘.” 가정법 문장은 겉으로 말한 것과 반대되는 현실을 품고 있습니다.
be동사는 주어와 상관없이 were를 쓰는 것이 원칙입니다. 일상 회화에서는 If I was ~도 들리지만, 시험과 격식 있는 글에서는 were를 씁니다.
가정법을 직설법으로 바꾸는 법
가정법 문장은 숨은 현실을 품고 있으므로, 그 현실을 꺼내면 직설법 문장이 됩니다. 바꾸는 규칙은 두 가지입니다. 시제를 한 칸 현재 쪽으로 되돌리고, 긍정과 부정을 뒤집는 것이죠.
가정법 → 직설법If I had time, I could help you.
→ As I don’t have time, I can’t help you.
If she were here, she would know the answer.
→ As she isn’t here, she doesn’t know the answer.
had는 현재 don’t have로, could는 can’t로 바뀌었습니다. 과거형이 가리키던 것이 사실은 ‘지금’이었고, 긍정으로 상상한 것이 현실에서는 부정이었기 때문이죠. 직설법 전환 문제는 이 두 가지만 지키면 풀립니다.
if 없이도 가정법은 쓰입니다. I would never say that.이나 It would be nice to live by the sea.처럼 주절만 남은 문장도 ‘만약 그런 상황이라면’이라는 상상이 숨어 있어서 would를 씁니다.
학생들이 자주 틀리는 가정법 문장
if절과 주절의 짝이 맞지 않는 경우
가정법은 if절과 주절이 함께 현실과 거리를 둡니다. if절이 과거형이면 주절에는 will, can이 아니라 would, could, might가 와야 하죠.
짝 맞추기If I knew the answer, I can tell you. (틀림)
If I knew the answer, I could tell you.
If I know the answer, I can tell you.
세 번째 문장은 직설법이라 둘 다 현재형입니다. 답을 알 가능성이 있다면 직설법, 사실 모른다면 가정법을 고르면 됩니다.
가정법 과거를 과거의 일로 해석하는 경우
If I were rich를 ‘내가 부자였다면’으로 해석하는 실수가 흔합니다. 형태는 과거지만 뜻은 현재라서 ‘내가 (지금) 부자라면’이 맞습니다.
형태는 과거, 뜻은 현재If I were rich, I would travel the world. (지금 부자라면)
If he lived near here, we could meet more often. (지금 근처에 산다면)
직설법과 가정법 비교 표
| 구분 | 직설법 | 가정법 |
|---|---|---|
| 말하는 내용 | 사실, 실제로 일어날 수 있는 일 | 사실과 반대이거나 거의 불가능한 일 |
| 시제 | 실제 시간 그대로 | 한 칸 과거로 옮김 |
| 주절 조동사 | will, can, may | would, could, might |
| 예문 | If it rains, I will stay home. | If I were a bird, I would fly. |
| 숨은 현실 | 없음 (말한 그대로) | 말한 것과 반대 (나는 새가 아니다) |
| 틀림 | If I had a car, I will drive. | if절과 주절의 짝이 맞지 않음 |
핵심 정리
직설법은 현실을 있는 그대로, 가정법은 현실과 거리를 두고 말하는 방식입니다. 가정법 직설법 차이는 시제에서 드러나며, 가정법은 시제를 한 칸 과거로 옮기고 주절에 would, could, might를 씁니다.
문장을 만들기 전에 이 일이 실제로 일어날 수 있는지 먼저 물어보세요. 가능하면 직설법, 불가능하거나 사실과 반대라면 가정법입니다. 직설법으로 바꿀 때는 시제를 되돌리고 긍정과 부정을 뒤집으면 됩니다.
도입의 두 문장을 다시 떠올려 볼까요. 비가 올지도 모르는 내일은 If it rains, 새가 될 수 없는 나는 If I were a bird입니다. 같은 if라도 현실과의 거리가 시제를 바꿉니다.
예상 문제
문제. 다음 문장과 뜻이 같은 것을 고르시오. (중3 객관식)If I knew her phone number, I could call her.
① As I know her phone number, I can call her.
② As I don’t know her phone number, I can’t call her.
③ As I didn’t know her phone number, I couldn’t call her.
④ Though I know her phone number, I can’t call her.
⑤ If I know her phone number, I can call her.
[해설] 가정법 과거는 현재 사실의 반대를 나타냅니다. 직설법으로 바꿀 때는 시제를 현재로 되돌리고 긍정과 부정을 뒤집으므로, knew는 don’t know, could는 can’t가 됩니다.
[정답] ②









