have
you
done
sth?
表示你完成了某件事吗?强调你完成的某件事和现在有关。
例如:1,where
have
you
been?
你去哪儿了?(也就是说,现在我问你,从过去某个时间到现在为止,你去哪儿了)
2,
have
you
finished
your
assignment?
你完成作业了吗?(也就是说,到现在为止,作业完成了吗)
3,what
have
i
done?
我做了什么了?(也就是说,我问自己到底为什么会这样?到现在为止,我做了什么才会变成现在这个样子)
did
you
do
sth?
是强调过去某个时间你做了sth吗?
例如甲和乙对话:
甲:i
was
sick
last
monday.
上个星期一我病了。(假设现在是星期三)
乙:did
you
see
the
doctor?
你去看病了吗?(这样问意思是,你上星期
一去看医生了吗?这种情况
下如果问have
you
seen
the
doctor?
就错
了)
have
you
done,用的是现在完成时,问的是你完成了吗,强调的是结果
did
you
do,用的是一般过去时,问的是有没有做,强调的是动作