请问did,didn't和have,haven't有什么区别吗?它们都是代表过去的

请问did,didn't和have,haven't有什么区别吗?它们都是代表过去的,比如I didn't finish my work yesterday和I haven't finish my work yesterday都是代表我昨天没有完成工作,但是有什么区别呢?这两个词的用法有什么不同呢???

did 和didn't是过去时态,have 和haven't 是完成时态,你举得例子用did 那个表示昨天的作业没完成,老师批评你了或者有什么样的结果。而用have 的 那个是病句,现在完成时后面的时间状语不用yesterday.去掉yesterday 后表示到目前为止还没完成,也许一会就能完成了。
温馨提示:答案为网友推荐,仅供参考
第1个回答  2010-07-27
did not侧重于描写叙述,I did not finish
my work yesterday.表示我昨天工作没完成。而have not则侧重于表示之前的一件事情对现在的影响。I have not finish my work yesterday.是指到昨天我的工作还没有完成。很有可能挨批,受责备之类的。这里的用法一般要根据语境去判断到底用那个。但是区别就在于此,一个代表白描,一个强调影响。
第2个回答  推荐于2017-11-23
I didn't finish my work yesterday.
昨天我没完成我的作业。

I haven't finish my work yesterday.
这句子基本不存在,因为yesterday 昨天,已经过去了,句子应该属于过去式,而非 haven't,应为 had not

I had not finish my work yesterday.
昨天我还没完成我的作业。
基本与 I didn't finish my work yesterday. 相近,不过多使用[I didn't finish my work yesterday.]。

have / has / had = 已经。。了
have not/ has not/ had not = 还未本回答被提问者采纳
相似回答