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

如果是出于句子本身的时态要求,需要写“完成时”不可以吗?如讲的是过去的过去的事情时,怎么确定主句中的shouldhavedone是虚拟语气还是陈述语气呢?毕竟这种情况下两... 如果是出于句子本身的时态要求,需要写“完成时”不可以吗?

如讲的是过去的过去的事情时,怎么确定主句中的 should have done 是虚拟语气还是陈述语气呢?毕竟这种情况下两者都可能是 should have done 形态?
展开
 我来答
百度网友1bf5d39
培训答主

2021-09-24 · 好好学习,天天向上
知道小有建树答主
回答量:2448
采纳率:71%
帮助的人:437万
展开全部
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既不是虚拟,也不是推测,而是谈论过去事实,并且表达了“惊讶”的情绪。这是在谈论与预期不符的事实。
追问
您好,谢谢您的耐心解答,但您似乎跑题了哦。
本题主要要问的是:
如果是出于句子本身的时态要求,需要写“完成时”不可以吗?

如讲的是过去的过去的事情时,怎么确定主句中的 should have done 是虚拟语气还是陈述语气呢?毕竟这种情况下两者都可能是 should have done 形态?
谢谢。
Holyield
培训答主

2021-12-11 · 关注我学习会变得更厉害哦
知道大有可为答主
回答量:2.6万
采纳率:99%
帮助的人:1119万
展开全部
should have done是虚拟语气,你得这么理解的,“should + 完成时”与虚拟条件连用,表示“与过去事实不符或相反的虚拟语气”。单独一个句子(即:单句),而且含有表示截止到将来某个时间的词语,如:by this time tomorrow, by then, by the end of this week,那么,“should + 完成时”,一般表示推测:“在将来某个时间之前应该业已完成的动作”。 跟if 条件句连用,而且主语是第一人称时,如果if 从句用了过去完成时,“should + 完成时”,一般表示“与过去不符或相反的虚拟语气”。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
尹一学姐

2021-12-02 · 答题好有意思啊哈哈~~
尹一学姐
采纳数:403 获赞数:662

向TA提问 私信TA
展开全部
是虚拟语气。

理由如下:
should have done本应该做了某事(但实际上没做。)

比如小时候,我本应该好好学习。
I should have studied hard.

希望能帮到您呢!
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
艾米爱翻译
培训答主

2021-10-02 · 最好的文章永远是下一篇!加油加油加油!
艾米爱翻译
采纳数:3233 获赞数:7110

向TA提问 私信TA
展开全部
最简单最直接的理解是:should have done是should do的过去时,因为should没有过去式,所以用should have done表示。例如:昨天你回来晚了,你应该给我们打个电话:You came back late yesterday.You should have phoned us.
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
130******17
2021-10-01
知道答主
回答量:4
采纳率:0%
帮助的人:1673
展开全部
“should + 完成时”,表示“过去本应该做某事,而实际未做”,属于虚拟语气的一种。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(11)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式