M: Where have you been, Kate?
F: I've been at the garage for the last two hours.
M: What happened? Did you have an accident?
F: No, nothing happened. But we haven't had the car checked since February. It's needed an oil change for a long time.
M: I know. Have you gotten the car back?
F: No. They've worked on it since four thirty, but they haven't finished it yet.
M: Well, when can we get it back?
F: I'll pick it up on Friday.
M: That's good. Then, we'll have it for the weekend.
since 与 for 这个两个字常常跟现在完成式句子一起用. since 表示 "自从一个特定的时间开始", for 表示 "时间持续了多久"后面加段时间.
Henry and Kate have been married since 1962.
They have been married for a long time.
Henry and Kate have lived in Seattle since 1965.
They have lived in Seattle for a long time.
M: Henry has worked as a fireman since 1970.
F: He has worked as a fireman for many years.
so far当so far表示“到目前为止”时,它指的是从过去某时持续到现在的一段时间,因此通常与现在完成时连用。So far 500 people have died in the earthquake. 到现在为止,已有500人在地震中丧生。
其他要用完成时态的标志性短语:
up to now
It’s the first(序数词) time that…
over the years
in the past five years
over the years
等等
ever和never表示到现在为止动作或状态曾经或从来没有发生过
英语中的动词从词义上可以分为延续性和非延续性两种。在现在完成时态中一定要注意动词这一特性,应将这类非延续性动词转换为延续性动词。如:
This movie has been on for half an hour. 这部电影已经开演半个小时了。(begin-be on)
How long have you had this dictionary? 这本字典你买了多久了?(buy-have)
其他这类动词同学自行掌握