区别辨析 for, from...to, from...till/until, since 与 ago

(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)
    我感冒已经四天了。