
Have完了形の理解の仕方
英語では、「したことがある、」という過去の経験を表現するのに、
主語+ have + 過去分詞
という表現をします。
普通に「私は煙草を吸った」と過去の話をするのだったら、
I smoked.
(私はタバコを吸いました)
でよいのですが、
「私は煙草を吸ったという経験を持っている」という経験を表現したかったら、動詞の前にhaveを持ってきて、動詞の活用を過去分詞系に変えて、
I have smoked.
(わたしはタバコを吸ったことがあります)
と言うのでした。
Haveの意味がいまいちピンと来なかったり、どう使ったら良いか分からない人が多いようです。日本語にそんな表現は無いので、どんな風に理解したらよいのか分からないのですね。
日本語だったら、過去完了なんていう文法は無いので、ただ「私はタバコを吸った経験がある」と言えば良いですけど。これも英語にしてみると、
I have an experience of smoking. (私は煙草を吸った経験を持っている)
ん?
ちょっと似ていませんか?
結局両方とも、経験をhave(持っている)という事なんですね。
ですからこの文も
I have smoked.
「私は煙草を吸った経験を持っている」と理解したら良いのです。
イメージではこういう感じです。

煙草を吸っている自分を袋に詰めて、「持っている」感じです。
動詞がBe動詞でも同じです。
I was in hell.
(私は地獄にいた)
これは普通の過去形ですが、
I have been to hell for 5 times.
(私は地獄に5回行った()

状態の継続
これは状態が継続しています。
I have been in hell for five years.
(私は地獄に居たという経験が5年続いている()
I have been in hell since that day.
(私はあの日から、地獄に住んでいます。()
I have lived in hell for five years.
(地獄に長く住んでいた(経験が)続いている。)
こういう継続の場合は、経験を持っているには違いないのですが、
ずーっとその状態を持っている感じです。
既にやめた場合
I have quit smoking.
I have given up smoking.
(私は煙草を止めた)
この場合は、ある時点で、袋を置き去りにしてしまいました。

否定形
I have not smoked.
(私は煙草を吸った(と言う経験)を持ったことがない。)
Haveをnotで打ち消している訳ですから、全く袋を持ったことが無い訳です。
Had 過去完了形
過去完了は
I had smoke.
I had smoked when the police arrived.
(警察が駆け付けた時は、私はタバコを吸った後だった)

ですので、警察が来た時にはすでに袋が置かれている状態ですね。
左が過去で、右が未来です。タバコを吸った袋の丁度後に警察が来た感じです。
本人はずっと右にもういますね。あそこが現在です。
現在完了進行形は
ずっとその袋を持ち続けているのですが、その袋の中の動作が動いている感じですね。
I have been drowning for 24 hours.
(私は24時間おぼれ続けている)

この場合は、袋の中で溺れ続けています。(^^
過去完了進行形
I had been drowning for 2 hours when I died.
(私が死んだときには私は2時間溺れ続けていた(経験になる))
助動詞を組み合わせて複雑な完了形表現
I kissed him.
(私は彼とキスをした。)
したという状態を持つべきだった
I should have kissed him.
(私は彼とキスをするという経験を持つべきだった)
キスをするチャンスにしなかったら、自分の物にできなかった感じです。
I must kiss.
(私はキスをせねば)
普通のmust表現だと~せねばですね。
I must have kissed him.
(したという状態を持ったに違いない。)
持たなければならない(→持ったに違いない)
ここでは、したに違いない!の役になります。
パーティー等で酔っ払って、朝起きたら、男と寄り添って寝ている自分を発見して、「昨日こいつとキスをしたに違いない」という状況です。
I might kiss
(私はキスをするかもしれない)
I might have kissed him.
( したと言う状態を持ったかもしれない )
I could have kissed him.
( したという状態を持つことさえ可能だった。 )
未来完了形
I will(may) have married him if I had slept with him.
私は彼と一緒に寝ていたら、結婚する事になっていただろう
I would have divorced if that was the case.
もしそうだったら、離婚をする事になっていただろう
The marriage will have ended in few years.
(その結婚は数年で終わっている事だろう。)
未来の経験回数を説明
I will have divorced three times if I divorced again.
もしもう一度離婚したとしたら、私は3回離婚するという経験を持つことになっていただろう。
反則技
かなり反則技なので、おすすめは出来ないのですが、
完了形の形を考えなくても、完了形に出来る方法があります。
それは、普通にまず過去形を作ります。
I smoked.
(私はタバコを吸った)
I gave a birth.
(私は子供を産んだ)
そしたら、動詞の前にdone(doの過去分詞系)を入れてしまうのです。
I done smoked.
I done gave a birth.
これだけで、全ての過去形を現在完了形にする事が出来ます。
未来完了形はこうなります。
I gone (will) done gave a birth
(私は(未来のある時点に)子供を産んでいただろう)
*goneとは、am going toを省略した形です。
今でもこの様に喋る人もいますが、これらは昔の奴隷や解放後の労働者、教養のない白人が喋っていた言葉で、“教養の無い感“が溢れています。が、同時に黒人の中で白人の喋る英語と違う英語を喋ろうという意識から出てきた喋り方として今でも息づいています。
下の文は小説“The Help”から抜粋しています。
Caryの英語小説、映画レビュー: The Help ヘルプ-心が繋ぐストーリー-

I done raised seventeen kids in my lifetime.
人生で17人子供を育てた(経験を持っている)
He just can’t believe I done won the game with something simple as Crisco.
彼はクリスコなんて言う単純な物で私が勝った(経験を持つ)何てことを信じられなかった。
You can’t fancy up a man done run off on his family
家族から逃げ去った(経験を持つ)男を格好良く言うなんて出来ない
They talking about what miss Jackie done wore on the tee-vee
彼らはジャッキー婦人がテレビで何を着ていた(と言う経験を持っている)かを話していた
Like she done salted her coffee instead a sugared it.
まるで彼女はコーヒーに佐藤ではなく、塩を入れた(経験をした)かのように
便利ではありますが、とても特殊な響きがあるので、これを喋ると凄く注意をひいてしまいます。ご紹介はしましたが、「それなり以上の」教育を受けた我々はキチンとhave +過去分詞で喋った方がよいとは思います。
でも、この様な喋り方に出会う可能性は十分あると思いますよ。