should have done必定是虚拟语气吗?为什么

 我来答
爵猴69
2021-09-25 · TA获得超过246个赞
知道答主
回答量:289
采纳率:98%
帮助的人:63.4万
展开全部
Should have done的推测用法

我们可以用should来谈论预期的、意料的事情。此时,should do是对现在或将来的预期,而should have done是对过去事情的推测。请把上面的a句与下面的b句进行比较。

1. b. It was an easy test and he should have passed, but I don’t know for sure.

那个测试很容易,他应该通过了,但我也不确切知道结果。

这里是should have done的推测用法。它与虚拟用法的一个根本不同在于,推测是不知道确切的结果,而虚拟是已经知道结果或事实与预期不符。

再请看其他例句。

2. It should be a nice day tomorrow.

明天应该是个好天气。

3. Try phoning John; he should be home by now.

试着给约翰打个电话,他现在应该在家里。

这里例句2、3中的should be分别表示对将来和现在的推测。下面我们来看should have done对过去事情进行推测的例句。

4. He should have arrived at his office by now. Let’s try ringing him.

他现在应该已经到办公室了,咱们试着给他打个电话。

5. The meeting should have finished by now.

会议现在应该已经结束了。

我们也可以用should not have done来推测过去某事未发生,请看下面两个例句。

6. John shouldn’t have left work yet. I’ll call his office.

约翰现在应该还没有下班,我这就给他办公室打电话。

7. They shouldn’t have sent the report off for printing yet. There is still time to make changes.

他们应该还没有把报告拿去打印,还有时间修改。

从以上例句我们看到,推测用法的should have done不同于虚拟用法,不能译成“本来应该做但实际没有做”;同样,推测用法的shouldn’t have done不能译成“本来不应该做但实际做了”。

should have done的惊讶用法

请把上文例1的a、b两句与下面c句进行比较。

1. c. It was an easy test. I’m surprised that he shouldn’t have passed it.

那个测试很容易,我很惊讶他竟然没有通过。

由此可见,这个句子中的should have done既不是虚拟,也不是推测,而是谈论过去事实,并且表达了“惊讶”的情绪。这是在谈论与预期不符的事实。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式