主句中是过去时,从句发生在过去的过去,不应该用过去完成时吗

Having been told that some guests were coming, she stopped all morning in that supermarket.

这句话中为什么是用having been told?

when asked the reason for their successthe kids had two explanation.

这两句话很像,但是第二句就用的是asked,同样都是主句为过去,从句要用被动态过去分词,为什么第二句不用having been asked呢?

 

请先 登录 后评论

3 个回答

曹荣禄  
擅长:动词用法,句法问题

第一句stopped 应为 shopped.

第一句作状语的having been told为现在分词完成体被动语态。之所以用完成体,是因为告诉的动作发生在谓语动作之前。第二句是when引导时间状语从句,省略了主语和be, when asked = when the kids were asked. When引导时间状语从句,可以表示主句的动作紧接着从句的动作发生。例如,When he opened the door, he saw Tom. 这个when从句是没有必要用过去完成时的,因为从句和主句的动词衔接发生。如果二个动作之间有较长的时间间隔,则从句就需要用完成体。例如,When he had sold his old house, he moved to Shanghai.

请先 登录 后评论
黎反修   - 英语翻译 (已退休)
擅长:数词用法,存在句,英语考试

        Having been told是现在分词完成式(有的语法书称为“现在分词完成体”), asked 是过去分词(过去分词没有完成体形式),都可以表示在谓语动词所示动作发生前已经完成的动作。

       所以:

      Having been told that some guests were coming, she stopped all morning in that supermarket.可以改为:

     When  told that some guests were coming, she stopped all morning in that supermarket.

     

     When asked the reason for their successthe kids had two explanation.可以改为:

     Having been asked  the reason for their successthe kids had two explanation.


 

请先 登录 后评论
好题  
擅长:英语

你的思考有对的成分,其实Having been told that...这种结构在这里就相当于过去完成时,只是英语里没有Hading 这个用法,所以用Having 来替代。这也是为什么这种句子的主句一般都是过去时态。

When 这句正如曹老师解答的,两个时间比较近,没必要这样用。

请先 登录 后评论
  • 3 关注
  • 0 收藏,2546 浏览
  • 用户19930330 提出于 2021-06-01 15:07