have done ,have been done , did什么时候用哪个?我经常分不清

来源:百度知道 编辑:UC知道 时间:2024/05/15 09:00:29

have done 现在完成时的主动式,表示过去发生并对现在有影响的动作或状态,表主动。
I have finished my homework.

have been done 现在完成时的被动式
同上,只不过表被动。
My homework has been finished by Jack.

did一般过去时,表示过去时间里发生的动作或状态,一般跟明显的表过去的时间状语。
I finished my homework yesterday.

have done是主动做

have been done是什么被做

did是过去的一个普通动作.

前两个是现在完成时,表示截止到现在一个动作已经完成,强调对现在造成的影响,have done是主动语态,have been done是被动语态。did是一般过去时,表示一个发生在过去某一时刻的动作。

did是一般过去时
have done是已经完成
have been done是过去已经完成