英語は実に時制を厳密に扱いますね。ってことで今回は完了形です。

現在完了形

現在完了形は過去と今の状況をつなげて、「どういういきさつを経て、今、
どうなっているのか」を一気に表現する形である。したがって、現在完了
形が用いられている場合、その内容は「今の状況」とかかわりをもってい
ることになる。

※『Forest』には現在形、過去形、未来形、現在完了形などが図入りで説
明されている。それを見ると分かりやすい。

「宿題が終わったから、遊びに行こうよ。」

× I finished my homework, so let’s go out to play.
[2011-10-25-1] にも書いたとおり、過去形は現在とは無関係の過去の事柄
を述べるのに使われる。以下が正解。
○ I have finished my homework, so let’s go out to play.

「まだ決心していないんだ」

× I don’t decided.
これも [2011-10-25-1] に書いたとおり、動作動詞の現在形は「反復・習
慣」を表すので、使えない。以下が正解。
○ I have not decided yet.

※ 最近のアメリカ英語では、現在完了形を使うべきところで過去形を使う
ことがあるとのこと(フィリピン英語もその傾向があるかも)。『Forest』
には続けて、「だからと言って、むやみに過去形を使うことはせず、現在
完了形と過去形を使い分けるようにしよう」と書いてあった。

現在完了形は、今の状況を述べるものなので、明らかに過去を表す表現と
ともに使うことは出来ない。

yesterday, last night[week/month/year], then, just now, when I was
..., When ...?, What time ...?, in 1972, on July 4,...

以下の表現は使うことが出来る。

before, ever, lately, just, now, today, recently, this
week[month/year], for the last[past] ... days, for ..., since ...

完了・結果

やっていたことをやり終えて、その結果、今どういう状況になっているか
を示すことが出来る。

I have already spent all my money.
Henry has just finished his homework.

already, just, now, yet などの副詞が用いられることが多い。

経験

今までの経験を表す場合にも、現在完了形を用いる。

I have visited London twice.
Have you ever climbed Mt.Fuji?

before, never, ever, often, once, twice, many times のような、回数
や頻度を表す副詞を用いるのがふつう。

継続

[2011-10-25-1] の状態動詞は、もともと同じ状態が継続する意味合いを含
んでいる。このような動詞を現在完了形にすれば、ある状態が過去のある
時から現在まで続いてきたことを洗わすことになる。

We have lived in this house since 1992.
I have known Greg for 20 years.

always, for, since, How long …? のような表現を用いることが多い。

現在完了進行形

「今までずっと〜し続けている」という動作の継続を表す時に使う。
過去と現在進行形を繋ぐような感じ。

I have been doing this puzzle for 30 minutes.
How long have you been waiting here?

動作は終わったものの、その余韻が今でも色濃く残っている時にも使われる。

I’m very tired. I’ve been running.

過去完了形

現在完了形は<今>と<今まで>をつなぐ。
過去完了形は<過去のある一点>と<その時以前>をつなぐ。

よって、when や before などの接続詞とともに使われることが多い。

The man had run away when the police arrived.

2つの出来事を実際に起こった順序とは逆の順序で述べる場合、時間的に
前に起こった出来事を過去完了形にする。

I realized that I had left my umbrella in his car.

起こったとおりの順序で述べる場合は、どちらも過去形にする。

My uncle bought a watch for me and I lost it.

未来完了形

これも現在完了形と過去完了形と同じ。<未来のある一点>と<その時以
前>をつなぐ。<その時以前>は、過去および現在も含む。

「(未来のある時点まで)ずっと〜し続けているだろう」という、動作の継
続を表すには未来完了進行形を用いる。ただし、その場面はあまり多くは
ないとのこと。

Next year I will have been working at the company for 30 years.

[2011-10-25-1] では『when や if などの「時」や「条件」を表す接続詞
を用いると、それに続く節の中では「実際に成り立つ」と扱うことになる
ため、現在形を用いる。』と書いたが、「未来に実際にあると想定すべき
こと」や「一般論」を表す時は現在完了形を用いることがあるとのこと。

I’m going to Rome when I have finished my Italian lessons.
Don’t drive a car when you haven’t had enough sleep.

総合英語 Forest 6th edition amazon.co.jp