现在完成时:表示(1)目前已经完成的动作,或(2)刚刚完成的动作,也可以表示(3)从过去某一刻发生,现在仍然延续着的动作或情况。这个时态强调动作对现在的影响。 The conference has lasted for five days. 会议已经开了五天。
一般过去时:表示(1)过去某个特定时间发生,并且一下子就完成了的动作(即:非持续性动作),也可以表示(2)过去习惯性的动作。一般过去时不强调动作对现在的影响,只说明过去。
句子中谓语动词是用一般过去时还是用现在完成时,取决于动作是否对现在有影响。
Have you had your lunch? 你吃过午饭了吗?(意思是说你现在不饿吗?)
Yes, I have. 是的,我已经吃过了。(意思是说已经吃饱了,不想再吃了。)
When did you have it? 你是什么时候吃的?(关心的是吃的动作发生在何时。)
I had it about ten minutes ago. 我是大约十分钟以前吃的。
has gone
left
一般过去时属于“过去”时间范畴,所以它只描述过去的动作和状态,因此和纯过去的时间状语连用,如yesterdaty, in 2000等。
现在完成时态属于“现在”时间范畴,所以它强调现在的情况,这就是我们所说的“过去的动作对现在的影响”。不能和表示过去的时间状语连用。看一个我们经常举的例子:
如果你串门到朋友家,他们正吃饭,就问你要不要一起吃,你这样回答:I have had my lunch.
这句话其实就说明了你“现在”的情况:不饿,所以也就不必再吃了。等于拒绝好意。这里并不关心过去的动作“吃”,而是强调的却是现在的情况。
如果你回答:I had my lunch at home. 就只强调了在家吃饭这个事实,至于现在是否还想再来一点则没有暗示。
至于现在完成时态的另一个用法:过去发生的动作一直持续到现在,比较好理解
看时间的啊!第一个是 她的妈妈已经去了北京 已经去了 到了那儿了 完成了到的动作 就要用完成时了。第二个是 她是今天早上离开的。 今天的早上 对于我们来说,今天的早上已经过去了,离开了 事情已经过去了 就要用过去时