have和do作助动词的区别

问题描述:

have和do作助动词的区别
如题,在什么时候用have什么时候用do?
例如:
Have your mechanics finished yet?
可以改成Did your mechanics finish yet?
我就是问什么时候用HAVE什么时候用DO阿
有详细点的说法没
再如:
How long have you lived here?
可以改为 How long did you live here?

先回答你第一个问题.不可以.因为有明显的标志yet,译为“已经”
表示对想在的影响,要用现在完成时.
第二个问题也是不可以的.How long have you lived here?比如这里的here指的是北京,那这句话的意思是你在北京已经住了多长时间了(这是那个人还住在北京).How long did you live here?你曾在北京住过多长时间?(这个人此时已经不在北京住了) 通过这两句话你可以知道被问的人现在的居住状态.
这里应该是have和did的区别.首先这两个动作的开始都是在以前.通过例1的yet,就可以知道have(完成时)强调对现在的影响,例2也是一样,表明这个人还在北京居住.did只是说明一个动作已经完成,不影响现在.