现在完成时态有两种用法,一是表示某个动作已经完成,二是表示某个动作从过去一直持续到现在。在第二种用法中,句中常常会出现一个时间,如“我在这里住了5年了”这句话,“5年”的前面需要用一个介词来连接,这时就要判断是用for 还是用since了。
1、for的意思是“达,共计”,所以它的后面就接时间段,而不是时间点。
I have lived here for five years. 我在这里住了五年了。
句中的five years就是时间段,它不是一个时间点。
2、since的意思是“自从”,它后面接时间点,它包含以下三种情况:
(1)since+过去时间:
I have lived here since 2008.我自从2008年就住在这儿。(2008年是过去的时间)
(2)since+时间段+ago:
He has been away from here since three years ago. 他自从三年前就离开这儿了。(three years为时间段)
(3)since+一般过去时态的句子:
He hasn’t left here since he moved here. 他自从搬到这儿,就没有离开过这儿。(he moved here是一般过去时态的句子)
3、有些同学不懂什么是时间段,什么是时间点。我这里教给你一个很简单的办法:有复数形式的就是时间段,没有复数形式的就是时间点。如:
(1)九月:September (时间点);九个月:nine months(时间段)
(3)3点钟:3 o’clock(时间点);三小时:three hours (时间段)
(4)前天:yesterday(时间点);两天:two days(时间段)
(5)去年:last year(时间点):三年:three years(时间段)
(6)上周:last week(时间点):两周:two weeks(时间段)
上面这些时间段中,把数词改成单数“一”时,仍然是时间段,如:
one month(一个月), an hour(一小时), a day(一天), one year(一年), one week(一周),half a year(半年)。
回到前面的插图上,5 o'clock是时间点,意思是“五点钟”,不用for; 5 hours是时间段,意思是“五个小时”,不用since; 而September意思是九月,而不是九个月的“nine months", 它是时间点,所以用since正确,答案选C. 你选对了吗?