For和since都表示我们说到的时间从过去开始一直持续到现在,但是for与since不能混用。

例如:
“I have lived in Italy for 13 years.”
“I have lived in Italy since 2003.”
当我们用for的时候,表示一个活动持续一段时间,从过去到现在。
我们用since的时候,表示过去的行为开始一直持续到现在。
两句话有同样的含义。for的例子中用了“13年”这个时间,但由于 2003年加上13年就是2016年,即今年。两句话的重点都是现在,“我”继续住在意大利,没有去其他国家。

Since 用来说明动作起始时间,for用来说明动作延续时间长度。

给大家举一些例子, 什么时候该用for和since
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.