If my brother had been here last Sunday, he ________ me from going.

来源:百度知道 编辑:UC知道 时间:2024/05/19 08:44:07
If my brother had been here last Sunday, he ________ me from going. (Unit8-13)
为什么用would have prevented不用would prevent?请分析一下句型或语法。

这是一个虚拟语气的用法

与现在事实相反 动词的过去式(be的过去式一般用were) would/ should/ could/ might + 动词原形
与过去事实相反 had + 过去分词 would/ should/ could/ might + have + 过去分词
与将来事实相反 动词过去式,should + 动词原形,were to + 动词原形 would/ should/

虚拟语气。
因为条件句“If my brother had been here last Sunday”叙述了一个和过去相反的假设,那么主句的情况也应与过去情况相反。表示与过去情况相反的句型就是:情态动词(could,would,might)+have done sth.

这时对过去事件的非真实条件的虚拟语气,从句用过去完成时,主句用WOULD+HAVE

这个句子是if引导的虚拟语气,前面用“过去完成时”的时候,后面从句用would+have+done,这是固定结构!