(1)在新概念三看到一句话, Where had it come from ?
换成现在普通句就是 It have come from america.
能否说我自己是 I have come from china.
我理解现在完成时是已经完成的, 所以我感觉I have come from china.很正确,‘’
但是现实生活中都不用。
(2)还有使用现在完成时和现在完成进行时这种结构,和have been adj(结构) .
都不加时间的时候,
请问怎么知道这句话的时间范围呢? (有些句子用在不止是刚刚发生的事情)
问题有点多,很不好意思。 如果有老师愿意解答一下, 万分感谢!!!麻烦老师了。
我知道你想问什么。
1 过去完成时的句子不能随便转换成现在完成时。过去完成时的动作发生于过去的过去,即说话人关心了一个过去时间,该时间的动作用一般过去时或过去进行时。如果在此基础上说话人又往前追朔一个更早的动作,才会用过去完成时。如:
I met Tom last week. He was very happy because he had bought a new car.
2 如果你在中国,你是没有机会说“I have come from China.)的。
但如果你刚到美国不久,有人问你是从哪个国家来到美国的(台湾?香港?日本?),你就可以说你从中国来的。由于come在你说话时之前已经发生并结束,你又不明确说这个动作的确切过去时间,就该用现在完成时。
I have come from China, not from Taiwan.
3 have done现在完成时没有持续时间状语,如果实意动词是动态动词,表示事件在不确切的过去已经发生并结束。如果是静态动词,通常为语法错误(包括have been + adj.)。因为静态动词的现在完成时必须接持续时间状语,表示状态从过去持续到说话时(通常还会继续)。不是为了说明这段时间的长度,静态动词就不会用完成体。
I have read the book. It's about World War II.
She has been ill for a week.
She has been ill.(错误。除非上下文强烈暗示从过去到现在的一段持续时间。)如:
--I haven't seen Tom for the last two weeks.
--He has been ill.
4 have been doing现在完成进行时主要用于动态动词,表示事件或短期习惯从过去持续到说话时(可能刚结束也可能没结束)。持续时间状语可用,也可不用,都是持续到说话时。静态动词一般不用进行体,自然也不能用于完成进行体。
I have been writing a novel (for two months).
如果觉得我的回答对您有用,请随意打赏。你的支持将鼓励我继续创作!