英语语法问题

10years before 和10years ago用法上有什么不同

10 years before 和10 years ago 的用法区别,前者是用于完成时,后者是用于过去式。10 years before 和10 years ago 的用法区别主要是看before和ago的区别.
before和ago都能表示在一段时间以前,但是二者的内涵和具体用法有明显的区别:
1. before表示从过去或将来某一时间算起多少时间以前,由于与这一时间状语连用的行为先发生在过去或将来某一时刻之前,因此往往出现在过去完成时态或将来完成时态中。例如,I called him up last night, but his mother told me he had left for Wuhan two days before.
2.如果不具体表明多少时间以前,before意为"从前;以前",表示从现在开始追溯到过去一段时间,或者主句的谓语动词表示的是经常、反复发生的行为,以副词的形式置于句末,可以用在现在完成时态中。例如,I have never been to Beijing before.
注意: before前的时间状语如果是特定的,含义不一样。试比较,He said he had arrived here a day before. (一天前)
He said he had arrived here the day before. (前一天)
3. ago指的是从现在起到过去时间的某一点的一段时间。这个时间状语常与一般过去时态或过去进行时态连用。例如, I graduated from the college twenty years ago.
4. 表示在某一时间点或事件以前时,只能用before,不用ago。因为这种用法是将before当作介词或连词使用。ago不具有这种功能。例如, He will come back before eleven o'clock.
Where did your brother study before he joined the army?
5.在语法中,ago与一般过去时连用,但在since three years ago这类短语中能与现在完成时态连用。因为three years ago构成一个名词短语,共同作since的宾格,意为"自从三年前以来"。例如, He has been here since three years ago. I have taught English in this school since twenty years ago.
6. 含before的从句一般不用将来时态,如果采用"will / would +V."时,一般被认为是情态或虚拟语气。例如,I would die before I would confess to it.
7.如果before从句是一般过去时态,所暗示的是过去发生的事,主句则宜用过去完成时,语义偏重于过去某阶段的行为或状况时,还可与一般过去时态连用。例如, I had never seen a Red Army man before I arrived in Xi'an. They asked me things that happened before the boy was born.
8. 不少的语法书上说,before引导的从句习惯上不与否定的主句连用,要用until。实际上二者都可以,有时在意义上有些区别。试比较,He didn't arrive until I returned. 直到我回来时他才到达。 He did not arrive before I returned. 在我回来之前他尚未到达。I didn't manage to do it until you had explained how. 直到你解释了如何干,我才设法完成了那项工作。I didn't manage to do it before you had explained how. 你解释了如何干之后,我才设法完成了那件工作。
但是没有a few hours earlier这种形式,时间名词前作"以前"讲是不用early的.
温馨提示:答案为网友推荐,仅供参考
第1个回答  2009-01-29
10years before 距离过去某个时间10年前

如:10 years before I graduated from college

10years ago 距离现在10年前

E.g. I went to college ten years ago.
第2个回答  2009-01-29
ten years ago 用于一般过去式中,而ten years before 用于过去完成式中