关于虚拟语气的用法与理解(should have done)
“should + 完成时”,主要有以下四种用法:
一、“should + 完成时”,表示“过去本应该做某事,而实际未做”,属于虚拟语气的一种。
You should have reported them to the police. 你应当向警方控告他们的。
The problem should have been ironed out months ago. 这个问题几个月前就该解决了。
You should have been more careful in money matters. 在钱方面,你本当更小心点的。
I'm to blame. I should have thought of that. 都怪我,我应该想到这一点。
You should have known better than to talk like that. 你本应更懂事而不致说这样的话。
二、“should + 完成时”与虚拟条件连用,表示“与过去事实不符或相反的虚拟语气”。
【说明】if 从句用过去完成时,主句用“should + 完成时”,主句的主语仅限于使用第一人称。这时,should 可以用would 代替。例如:
If I had seen Mary I should/would have invited her. 我当时要是看到玛丽的话我本会邀请她的。
If I had received the present, I should/would have thanked him. 如果我收到了礼物,我是应当向他道谢的。
I should/would not have laughed if I had thought you were serious. 如果我想到你是认真的,我就不会笑了。
也可以用其他结构代替if 条件句。例如:
But for your advice, I should/would have failed. 要不是你的忠告,我会失败的。
三、“should + 完成时”,还可以表示推测,推测“在将来某个时间之前应该业已完成的动作”。
The paint should have dried off by this time tomorrow. 油漆到明天这个时候就应该已经干了。
They should have arrived in Beijing by this time. 他们这个时候该到北京了。
I think I should have finished it by then. 我想到那时我应该完成了。
We should have the whole deal sewn up by the end of this week. 到本周末,我们应该可以把整个交易谈妥。
The letter should have arrived by now. 信函现在该到达了。
四、“should + 完成时”,还可以用来“对过去发生的情况,表示惊讶、后悔、难过、不理解、不可思议”等情绪,翻译时通常含有“竟然”的意味。
你的句子就属于这一类!例如:
I am surprised that you should have acted so indiscreetly. 你竟然表现得如此轻率,我感到惊讶。
It is amazing that she should have said nothing about the murder. 令人惊奇的是,她竟然对这桩凶杀案不置一词。
I'm sorry you should have gone to so much trouble. 很抱歉,让你费了这么大事。
I wonder why he should have been so angry. 我想不通,他怎么会这样生气。
It is a pity that he should have failed in the exam. 他考试竟然没有及格,真是可惜。
I can’t think why he should have said that it was my fault. 我真不明白,他怎么竟然说这是我的过错。
It’s strange that he should have left without telling us. 奇怪,他竟没有和我们说一声就走了。
【温馨提示】
网友最关心的可能是:如何研判“should + 完成时”属于那种类型,怎么去理解?
首先,应掌握以上讲的四种情况,牢记于心。这四种情况的特点分别如下:
1. 单独一个句子,没有上下文语境(即:单句),“should + 完成时”,一般表示“过去本应该做某事,而实际未做”。这属于第一种情况。
2. 跟if 条件句连用,而且主语是第一人称时,如果if 从句用了过去完成时,“should + 完成时”,一般表示“与过去不符或相反的虚拟语气”。 这属于第二种情况。
3. 单独一个句子(即:单句),而且含有表示截止到将来某个时间的词语,如:by this time tomorrow, by then, by the end of this week,那么,“should + 完成时”,一般表示推测:“在将来某个时间之前应该业已完成的动作”。 这属于第三种情况。
4. 句中含有表示“惊讶、后悔、惋惜、不可思议”等词语时(如:surprising, surprised, amazing, amazed, astonishing, astonished, strange, pity, sorry, unlucky, sad, wonder 等),“should + 完成时”,一般用来“对过去发生的情况表示后悔、惊讶、不理解、不可思议”等。这属于第四种情况。
你问题中最关心的是下列两种情况的区别。现在以这两句为例,解答如下:
1. You should have reported them to the police. 你应当向警方控告他们的。
2. I am surprised that you should have acted so indiscreetly. 你竟然表现得如此轻率,我感到惊讶。
一、在动作是否实施方面:
句1 表示“过去应该做的事情而未做”:你在当时本应该向警方报告,但实际没有!
句2 表示“过去已经做了某事”:你在当时的表现确实很轻率!
二、在表达情绪方面:
句1 带有“责备”的口吻。在翻译时加上“本该......”字样。
句2 表示“惊讶”的情绪。在翻译时加上“竟然......”字样。