Since 用来说明动作起始时间,for用来说明动作延续时间长度。
I have lived here for more than twenty years.
I have lived here since I was born..
My aunt has worked in a clinic since 1949.
Some new oilfields have been opened up since 1976.
I have known Xiao Li since she was a little girl.
My brother has been in the Youth League for two years.
I have not heard from my uncle for a long time.
注意:并非有for 作为时间状语的句子都用现在完成时。
I worked here for more than twenty years.
(我现在已不在这里工作。)
I have worked here for many years.
(现在我仍在这里工作。)
小窍门: 当现在完成时+一段时间,这一结构中,我们用下面的公式转化,很容易就能排除非延续动词在完成时中的误使。
1) (对) Tom has studied Russian for three years.
= Tom began to study Russian three years ago, and is still studying it now.
2) (错) Harry has got married for six years.
= Harry began to get married six years ago, and is still getting married now.
显然,第二句不对,它应改为 Harry got married six years ago. 或 Harry has been married for six years.