②表示经历的现在完成时
强调过去某一时刻到说话时这段时间中的经历。
Have you
ever been to the Great Wall?
你去过长城吗?
I have
visited Beijing at least ten times.
北京我至少访问过十次了。
She has
never spent a holiday at the seaside.
她从未到海滨度过假。
③表示延续的现在完成时
这是现在完成时的“未完成”用法,表示一个动作或状态从过去某时开始,持续到现在,可能要继续下去。
He's
loved fishing for a long time.
他爱好钓鱼为时已久。(他现在仍爱好钓鱼)
I have
lived here for more than thirty years.
我已在这儿住了三十多年了。(也许还会继续住下去)
注意:
现在完成时的“未完成”用法既可用于动态动词(主要是持续动词),也可用于状态动词,但它一般不适用于表示短暂动作或位置转移的动词,如:open,
break, go, come, arrive, leave等。如用这类动词表示“未完成”,通常只限于否定结构。
I
haven't seen a film for weeks.
我已经好几个星期没看电影了。
She
hasn't written to me since September.
自从9月份以来她还没给我写过信呢。
3.现在完成时的时间状语
①与现在完成时“已完成”用法连用的时间状语
现在完成时表示的动作或状态发生在现在时间以前的某个未明确指出的过去时间内,和它连用的时间状语要与现在时间有关,不能是明确地表示过去的时间状语。
a.不确定的过去时间状语:already,
yet, before, recently, lately等
I've
seen the film before.
我以前看过这部电影。
Have you
been there lately?
近来你去过那里吗?
b.频度时间状语:often,
sometimes, ever, never, once, rarely等
We have
never heard of that.
我们从未听说过这事。
He has
sometimes played tennis.
他有时打网球。
Big Ben
has rarely gone wrong.
大本钟很少出差错。
c.包含现在时间在内的时间状语:now,
just, today, this morning, this week, this year等
I have
just finished the letter now.
我现在刚写完信。
You have
just missed the bus.
你刚好错过公共汽车。
Has he
done much work today?
他今天做了很多工作吗?
比较:already和yet用法上的区别
already常用于肯定句,置于句中。yet常用于否定句和疑问句,置于句末。但already有时也可用在疑问句中暗示惊讶的心情。
She has already
gone.
她早就走了。
Have you
eaten your dinner already?
你已经吃过饭了?
He has
not come yet.
他还没有来。
②与现在完成时“未完成”用法连用的时间状语
与“已完成”用法一样,表示具体的过去的时间状语不能与“未完成”用法连用。与其连用的往往是指一段时间的状语以具体表示某一动作或状态持续了多久。
a. since
+具体时间,表示动作或状态从何时开始
Since
then, he has developed another bad habit.
自那以后他养成了另一个坏习惯。
He
hasn't been home since he graduated.
他毕业后就没回过家。
|