万书网 > 文学作品 > 牛津实用英语语法 > 第69章

第69章





2  I  haven’t  seen  him  since  November.

11月以来我一直没看到过他。

Has  he  written  since  he  left  home?

他离开家后来过信吗?

We  had  a  letter  last  week.We  haven’t  heard  since.

上星期我们接到了一封信。从那以后没有收到过信。

I’ve  since  changed  my  mind.相当于:

I’ve  changed  my  mind  since  then.

从那以后我改变了主意。

3现在完成时可以用于表示习惯性动作:

They’ve  always  answered  my  letters.

他们总是给我回信的。

I’ve  never  been  late  for  work.

我上班从来没迟到过。

有时这些好像是连续的动作,而不是重复的动作:

Since  my  accident  I  have  written  with  my  left  hand.

出了事故以后我一直用左手写字。

I’ve  worn  glasses  since  my  childhood.

我从小就戴眼镜。

可以用for+一段时间来代替since+某一具体的时间:

I’ve  used  my  left  hand  for  a  month  now.

我使用左手已经一个月了。

I’ve  worn  glasses  for  ten  years.

我戴眼镜已经十年了。(参见第186节。)

4还要注意以下这种句型:

This  is  the  best  wine  I  have  ever  drunk.

这是我喝过的最好的葡萄酒。

This  is  the  worst  book  I  have  ever  read.

这是我读过的最糟的书。

This  is  the  easiest  job  I  have  ever  had.

这是我干过的最容易的工作。

可以去掉这种结构中的ever,也不用形容词的最高级形式,而和  the  first,the  second等以及  the  only连用:

It/This  is  the  first  time  I  have  seen  a  mounted  band.

这是我第一次看到骑兵乐队。

It  is  only  the  second  time  he  has  been  in  a  canoe.

这才是他第二次乘独木舟。

This  is  the  only  book  he  has  written.

这是他写的唯一的一本书。

?



[Amber  demo]



186表示一个尚未完全过去的时期内延续的动作

?

表示时间的词  for,since(参见第  187节),all  day/night/week,  all  my等life,all  the  time,always,lately,never,recently

A现在完成时用来表示一个从过去开始而且将继续到现在说话时间之后的动作:

He  has  been  in  the  army  for  two  years.

他在军队里已经服役两年了。(他还在军队里。)

I  have  smoked  since  I  left  sohool.

我离开中学以来一直抽烟。(我仍然抽烟。)

We  have  waited  all  day.

我们等了整整一天了。(现在仍在等。)

He  has  lived  here  all  his  life.

他一辈子都住在这里。(他还住这里。)

He  has  always  worked  for  us.

他一直在为我们工作。(他现在仍在为我们工作。)

这种类型的动作可以用图解表示为:

{ewc  MVIMAGE,MVIMAGE,  !461336T1.bmp}

可以把上述例句和下面例句相比:

He  was  in  the  army  for  two  years.

他在军队里呆了两年。(他现在不在军队里。)

I  smoked  for  six  months.

我抽了六个月烟。(然后戒了烟。)

He  lived  here  all  his  life.

他一辈子都住在这里。(可能他现已去世。)

以上三个例句都与已完时段有关:

{ewc  MVIMAGE,MVIMAGE,  !461336T2.bmp}

所以要用一般过去时。(参见第117节B。)

B但是现在完成时有时可以用来表示一个开始于过去而正巧在说话时刻结束的动作:

Ann(on  meeting  someone):I  haven’t  seen  you  for  ages.

安(遇见了某人):我很久没见到你了。(但现在看到了你)

This  room  hasn’t  been  cleaned  for  months.

这房间已有好几个月没有清扫了。(但我们现在正在打扫)

It  has  been  very  cold  lately  but  it’s  just  beginning  to  get  warmer.

近来天气一直很冷,但现在开始暖和了。

这种类型的动作可以用图解表示为:

{ewc  MVIMAGE,MVIMAGE,  !461337T1.bmp}

C  表示知道、相信和理解等的动词不能用于现在完成时,只有上文A中所述的情况例外:

I  have  known  him  for  a  long  time.

我已经认识他很长时间了。

I  have  never  believed  their  theories.

我从来就不信他们的理论。

因此,最近的动作即使未指明时间,也必须用一般过去时来表示:

Did  you  know  that  he  was  going  to  be  married?

你知道他要结婚了吗?(这里不能用Have  you  known)

Hello!I  didn’t  know  you  were  in  London.How  long  have  you  been  here?

你好!我本不知道你在伦敦。你在这里多久了?

但think和wonder可以按第185节D中的用法使用:

I  have  sometimes  thought  that  I  should  have  emigrated.

我有时想我早该移居国外。

I  have  often  wondered  why  he  didn’t  marry  her.

我常常纳闷他为什么不娶她。

D注意以下问答:

—How  long  have  you  been  here?

—I’ve  been  here  six  months.

—你到这里多久了?

—我到这里已经六个月了。

{ewc  MVIMAGE,MVIMAGE,  !461337T2.bmp}

继这种回答之后,一般常用现在完成时对已提到的这一时期之内的动作进行提问。这一段时期可以认为是未终结的时间段,用下图来表示:

?

因为停留、存在等动作都还没有结束:

Have  you  been  to  the  zoo/the  theatre/the  museums/the  casino?

你去过动物园/戏院/博物馆/娱乐场吗?

Have  you  enrolled  in  a  school/found  a  job/met  many  people?

你已经入学/找到工作/见许多人了吗?

如果未提到时间,回答也用同一时态,否则就要用一般过去时:

Yes,I  have(been  to  the  zoo  etc.)/Yes,I  went  there  last  week.

对,我去过了。/对,我上周去了。

No,I  haven’t  enrolled  yet./Yes,I  enrolled  on  Monday/this  morning.

不,还没有。/对,周一/今早入的学。

?



[Amber  demo]



187与for和since连用

?

A  for与表示一段时间的短语连用:

for  six  days六天

for  a  long  time很久

for与一般过去时连用,表示一段终结了的时间:

We  lived  there  for  ten  years.

我们在那里住过十年。(但我们现在不住那里了)

for与现在完成时连用表示延续到现在的一段时间:

We  have  lived  in  London  for  ten  years.

我们在伦敦已经住了十年。