(1) ①for用来表示一个行动或情况延续多长时间,既可用来指过去,也可用来指现在或将来。
- That house has been vacant for ten years.
那所房子10年来一直空着。 - We go to the seaside for a week every August.
我们每年8月去海边一周。 - My boss will be away for the next ten days.
老板今后10天将不在这儿。 - By next Christmas, I will have been here for three years.
到下一个圣诞节,我就将在这儿三年了。
②当for用来指持续到目前的一段时间时,句子中应用现在完成时,而不能用现在时间。
- I have known him for a long time.
我认识他已经很长时间了。 - He has lived in this street for ten years.
他已经在这条街道上住了10年。
③当说及过去的某一具体时间时,用for和过去完成时来指持续至那一时间的一段时间。
- When she arrived, I had been waiting for two and a half hours.
她来到时,我已等了两个半小时。 - I met her last Christmas, but I had known her by sight for years before that.
我是去年圣诞节与她结识的,在那之前有好多年,我跟她只是面熟而已。
④在(for) how long短语中,for一般不用。
- How long have you been waiting (for )?
你已等了多长时间了?
(2) ①如表示一个行动或者情况何时开始、何时结束,通常可用“from...to”或“from...till/until...”来表示。
- I was asleep from three to six. (=for three hours)
我从3点睡到6点。 - We usually go to Beijing from June to October. (=for three months)
我们通常从6月份到10月份去北京。 - We have summer vacation from July 9th until/to August 24th this year.
我们今年暑假是从7月9日到8月24日。 - From two o'clock precisely till eight o'clock precisely she took charge of Mary.
从两点到8点,她照顾玛丽。
②如只表示一个行动或情况何时开始,可用from。
- He studied English from the age of four.
他从四岁开始学英语。 - From her earliest childhood, she was fascinated by the history of the ancient China.
从童年开始,她就迷上了中国古代史。
(3) ①since用来表示一个持续至说话时的行动或情况的起始点(不可用from)。
- I was there from three o'clock, but nobody came. (不能用since)
我从3点就在那里了,但谁也没来。 - I have been here since three o'clock, but nobody's come yet. (不能用from)
我从3点就在这里,但谁也没来。 - I will be there from three o'clock tomorrow afternoon. (不能用since)
从明天下午3点开始,我将在那里。
②since通常跟现在完成进行时连用:
- What have you been doing since this morning?
你从今天早晨起一直在做什么? - It's been raining since two o'clock.
从两点开始一直在下雨。
③当说到过去某一具体时间时,用since和过去完成时来表示一个持续到那一时间的行动或情况的起点。
- When she arrived, I was pretty fed up, because I had been waiting since six o'clock.
她到达时,我已经很烦了,因为我从6点起就一直在等。
④用since时的时态。
since通常与句中主要动词的现在完成时或过去完成时连用。如果since引出一个从句,从句中的动词可以是过去时也可是现在完成时,取决于上下文。
- I have known him since we were children.
当我们还小时,我就认识他了。 - We have known each other since I have lived in this street.
自从我在这条街上居住以来,我们就相互认识了。
⑤在“It is+(时间短语) since”的结构中可以用现在时或现在完成时。
- It is a long time since the last meeting. (也可说:It has been a long time...)
距离上次开会已经很长时间了。 - It is at least fifteen years since that holiday in the Alps. (或It has been...)
自从那次在阿尔卑斯山度假以来已至少过去十五年了。
*在这一结构中,根据意思也可用过去时或过去完成时。
- It was ages since my last meal, and I was very hungry. (或It had been ages...and I was...)
那时,我距离吃上一顿饭已过去很长时间了,所以我当时非常饿。
(4) ago用来表示过去的事件何时发生,发生的时间是从目前往前数,而不是说出具体日期或时间。ago与过去时连用。
- I met him three days ago . (...last Tuesday.)
我三天前见过他。 - That hotel was closed three years ago . (...in 1998)
那个酒店三年前就关门了。 - I caught this cold four days ago . (...at the end of last week)
我感冒已经四天了。