几个英语时态问题

1: If they mailed it last week,it should be here by now.
此句为何要用 mailed 呢?我的理解是,这个mail 应该表示的是 过去发生的事,应该用 had mailed。而这里用了mailed,是不是还有其他的概念或意思呢?
2: If you could have chosen where you were born and grew up,what country/culture would have been your choice?
这里的虚拟, 这里表示的应该是对过去事实的虚拟,而对过去事实的虚拟中,if后面的谓语动词应该是had done/been,但这里用了could have done,我就想在表示对过去事实虚拟时,if 后面的谓语动词是不是除了 had done/been之外,还可以用一些可以表示虚拟的情态动词,以此来表示主语的一些主观意思,比如意愿什么的?
3:The guests will/would have arrived by this time.
在这个句子中,我看的语法书里(《英语语法新思维》)写着:will have done可以表示对过去的推测,我想问问这个用法和将来完成时有什么区别?我个人觉得这两个用法容易混淆。

希望英语牛人能帮我一下,这些困扰我好多天了,谢谢!

1、此句含有混合虚拟,前半句是对过去的虚拟,后半句则是对现在的虚拟,实际两者都没发生过。
2、我觉得could表示一种能力,又是对过去的虚拟,所以用了could have done,类似的句子很多,用其他的情态动词还没见过。
3、在不同的时间状语下,will have done结构具有不同的含义。will have done表示对过去已经发生的事实进行的推断,语法上称为情态动词的推测性用法。在这里,would不能简简单单地看做是will的过去式,他俩推测的语气强弱不同。区分是看准时间状语,再进行判断该填什么。
温馨提示:答案为网友推荐,仅供参考
第1个回答  2013-08-20
第一题 mailed 不是表示过去发生,而是指没有发生,虚拟发生,翻译过来 如果上周他们有的的话,现在应该已经收到了。事实上没有邮寄。故表示现在时的虚拟时态用过去式
第二题 could have done 中could 表示能够的意思 他于had done/been 的差别在于前者强调could 后者强调done
第三题 过去完成式一般用 would have done ,将来完成时用will have done 过去就用would 将来用will追问

不是指过去发生,是对过去的虚拟,第一句话有last week,它肯定是对过去的虚拟,也就是实际上没有做,应该是用had mailed,不理解为什么它这里用了mailed.??

第2个回答  2013-08-20
1,就是简单的if引导的从句,从句的谓语在过去,用过去时,(就是表面当时没mail)如果要用have mailed,后面主句就要用should have
2,这句suggests that what could have been done were actually not done. 到现在可以随便YY啦
3,
We can use 'will have done' to predict what we think has already happened at present.
He'll have already read the report by now. Too late to change it.
She'll have boarded her plane. It's too late to contact her.

We can use 'will have done' to talk about what will have been achieved by a certain moment in time.
We'll have been in these offices for eight years next month.
She'll have visited ten countries in twelve days by the time she gets back.
I'll have finished this project by Friday

would 貌似没那么肯定本回答被网友采纳
第3个回答  2013-08-20
第一题if 从句是真实句 他们就是 寄了 主句是虚拟句 现在该到了 实际没到

第二题你说的对 就像 if you will do ,i will let you do 一样 从句中可以有 情态动词

第三题 will have done可以表示对过去的推测,这个用法和将来完成时 表示将来完成的区别 根据 时间状语 来判断追问

IF后面不是要虚拟吗?可以真实句么?真实句不是要用在 or前面或者but后面吗?

追答

IF后面不一定非要虚拟 可以是真实句 可以根据谓语形式 判断
本句 如果是 错综虚拟语气 应该是
If they had mailed it last week,it would be here by now.

从句 与过去相反 主句与现在相反
原句 从句 不是虚拟语气 主句是虚拟语气
句子意思 在他们上个星期寄了这封信的情况下 到现在这封信 本该 到了。
其实本句=they mailed it last week,and it should be here by now.

追问

也就是说 IF 后面不一定非得遵从虚拟语气,可以直接按时间关系用过去式表示对过去的虚拟,对吧?

追答

也就是说 IF 后面不一定非得遵从虚拟语气,可以直接按时间关系用过去式表示过去的动作

这和 主将从现 中的if条件句 道理一样 if it rains we won' t go out

本回答被提问者采纳
第4个回答  2013-08-20
针对第二个问题:对现在的虚拟 if 后用过去式 (would could might shluld +v动词原形)
对过去的虚拟 if 后用过去完成时(情态动词+have done)限上面的四个情态动
对将来的虚拟 1.过去式
2.should+v ( would could might shluld +v动词原形)
3.were to+v
(背下来就没问题了、)