if引导的虚拟语气应该用什么时态?
2. 应该怎么使用他们这两种时态呢?我总分不清什么时候用过去式和什么时候用完成时,求详细帮我解答下
例如:if you were at home yesterday,i would come to see him还是 if you had been at home yesterday, i would have come to see him 应该是哪个呢?
3. 应该怎么分辨if是引导虚拟语气还是引导真实语气啊?
求大神解答啊!! 展开
if的虚拟语气属于倒退时态形式,分为三种情况,你的第一个问题基本总结了整体,精确来说是这样的:(同时回答问题3和2)
虚拟语气即事件发生几率很低,几乎为0。因此为了让读者明白说话人究竟是在说想象的事件还是真实的事件,这两种情况要在文字中体现出来。真实事件就是你所学过的所有时态,而想象事件就用虚拟语气,要跟正常的时态不一样。至于如何分辨有两种情况1.你在做题,那么题目和选项都很明显是虚拟还是真实。2.你想自己造句,那么你心里清楚你要表达真实还是虚拟,按照原则造句就行。具体到if的话很简单,if从句只有两种情况:主将从现(真实),虚拟语气(虚拟)
下面if从句的虚拟语气原理:
如果句子在想象现在发生而实际未发生的事件,由现在时倒退成过去时:
(从句)if+过去时,(主句)4个情态动词+动词原形
如果句子在想象将来发生而实际不会发生的事件,由将来时倒退成过去时,所以与1是一样的,但是此处从句有三种:
(从句)if+过去时/if+were to do/if+should do,(主句)4个情态动词+动词原形
如果句子在想象过去发生而实际没有发生的事件,有过去时倒退成过去完成时:
(从句)if+过去完成时,(主句)4个情态动词+have done
把以上三个原则的时间弄明白是关键。你问你的具体的题,题中出现了yeasterday,因此判定是在想象过去发生而实际并未发生的事件,所以应该倒退成过去完成时,即 If you had been at home yesterday, i would have come to see him。
2013-08-27
如下两个例句:
if I were you, I would go there 如果我是你,我就去那里。
if I had been there, I would have known the result.如果我去过那里,我应该已经知道结果了。
而真实语气是可实现的,用于叙述真实事件
如下两个例句:
If I had enough money, I would buy a book. 如果我有足够的钱,我将买一本书。
I won’t lend you any money even if I had money.即使我有钱,我也不会借给你。