might be doing sth 这句话是对过去的猜测,那 might have been doing sth 也是对过去的猜测?什么区别?

might 是 may 的过去式,假如may猜测过去,就是 might be doing 吗,为什么还有 might have been doing sth 的情况呢?

回答如下:
might be doing:推测现在正在进行的动作,might / may无时间差别,只有可能性大小的差异(may的可能性大于might)。例如:
He may / might be sleeping now.
might have been doing:推测过去正在进行的动作,同样may与might无时间差别,只有可能性大小的差异。例如:
He may / might have been sleeping this time yesterday.
温馨提示:答案为网友推荐,仅供参考
第1个回答  2021-03-15
might be doing smth, 这是说的现在,might 是 may 的过去时,只有在从句里是的.

he may be hanging out.
someone said he might be hanging out.
he might be hanging out.
someone said he might be hanging out.

what was he doing last night.
he may/might have been hanging out. 你这里不能直接回答 he might be hanging out.追问

但是如果说到 last night, 是过去的时间的话,have been doing 不是现在完成进行时吗,不能用在明确的过去时间里呢?

追答

have been doing? 你这里说的是 might/may have been doing.
你有个东西要先明确一下,might/may/could + have ,这个是情态动词的过去时,这不是现在完成时,这没有perfect的意思在里面,这是过去时.
但是这个也有些时候是将来完成时,你可能根本用不到,就不用说更复杂的东西了。

本回答被提问者采纳
第2个回答  2021-03-15
前者might 后面加的是进行时,而后者might 后面加的是完成进行时。所以两者的区别就在于进行时和完成进行时的区别。显然后者表示这一动作(行为)造成了某种后果或带来了某种影响,而前者没有这一层含义。
而might 虽然是may的过去式,但两者都可以用作情态动词表示可能,此时不能将might看作may的过去式,只是在含义上might的语气较may要弱。追问

那如果说 he may be doing sth, 我要说过去,是 he might be doing sth吗

追答

是的,但这种情况下最好在句子里用时间状语加以明确。