情态动词(shall, should等的用法)
Tom ______ better than to ask Dick for help.
A.shall know B.shouldn't know C.has known D.should have known
牛津高级词典:
know better (than that/than to do something)
to be sensible enough not to do something
表示一个人明事理而不至于做某事。
know是静态动词,与情态动词连用时,情态动词为推测性用法。should表示说话人以百分之六七十的信心推测:应该是。。。的情况。
A shall表示说话人的意志,不能和静态动词连用。shall也不能表示推测。因此排除。
B shouldn't know否定形式与句子逻辑矛盾,因此排除。
C has know静态动词的完成体通常需要持续时间状语,没有持续时间状语通常是错误。
D should have known对过去的情况进行推测,符合上下文逻辑,为正确答案。
比较:
Tom knew better than to ask Dick for help. 叙述事实:汤姆当时头脑很清楚,不至于请迪克帮忙。
Tom should have known better than to ask Dick for help. 对过去的情况进行推测:很可能汤姆头脑清楚,没有让迪克帮忙。
与刘老师讨论
关于should have known better, 我起初也是像刘老师那样理解的,后来改变了。可能是我考虑的太多了。
should作为情态动词两个基本语义,表示义务、责任,翻译为应该、应当;另外就是表示说话人的推测(60-70%的把握),翻译为“应该是、很可能、大概”。
当should的意义为义务、责任时,表明说话人在建议主语做某事,或者认为主语有责任或义务做某事,即说话人试图通过自己的意志影响、劝说句子的主语做某事,即通过主观意志促使一件事情的发生。只有动态动词表示事件意义时,事件的发生与否在一定程度上是主观意志可控的。而静态动词表示的状态是不受主观意志控制的。因此我的理解是,should表示义务或责任意义时,后面应该是动态动词,而不是静态动词。如果should后接静态动词,should应该是推测性用法,即表示推测。这和静态动词通常不能用于祈使句的道理是一样的。
例如,我们不能说:Know me.
You should know me. 这句话显然不是表示你有认识我的责任和义务,而是表示推测,你很可能/大概/应该认识我。
You should have known me then. 这句话也不是“你当时本该认识我”的意思,而是表示对过去的推测,你当时很可能就认识我。
正是鉴于这个原因,我认为网友提问的句子should have known better than to do中,should是推测性用法,而不是表示本该做某事而未做。
刘老师对should后接静态动词时,should的语义有什么看法呢?是不是should have done表示“本该做某事而未做”时,实意动词为动态动词、静态动词都不受限制吗?
《牛津高级英语词典》对know better than to do something对解释是:
to be sensible enough not to do something, 即为静态意义。
should have done表示推测意义时,可以加by+time状语。但不是必须的。这和must have done, may have done可以没有by时间状语是一样的。三者之间只是说话人推测时的信心程度不一有关。与状语没有直接关系。
下面几个句子如果将should理解为推测性用法,译文则不同。
You should have known better than to talk like that.
你本应更懂事而不致与说这样的话。(义务、责任)
估计你不致于说那样的话吧。(推测)
You should have known better than to go mountain climbing alone.
你本来不该笨得单独去爬山。(责任、义务)
我想你很理智,不致于独自一人去爬山了吧。(推测)
He should have known better than to take the risk.
你应该很明智,不该去冒险。(责任、义务)
你不致于去冒险了吧。(推测)