before after 能否跟完成时态

问题描述:

before after 能否跟完成时态
如题:
1、之前上课的时候老师说到before after不能跟完成时,他说的是主句不跟完成时还是从句不跟完成时?
我的造句:
①He has finished his homework before he went to bed.
②He fininshed his homework before he had went to bed.
③He finished his homework before he has gone to bed.
④He had finished his home work before he went to bed.
请分开点评,从时态的平行到用法.
2、另外before在做修饰的时候也遵循上面规律么?
例句:
①He has done his homework before.
②He did his homework before.
③Tom has never before been isolated from his friend.
求点评.

1里面的造句,has是现在完成时,不可能发生在过去式的went之前,所以只能说he had finished his homework before he went to bed. ①就不对了,同理,②的时间先后顺序也反了,过去完成时表示“过去的过去”,是不能发生在过去式之后的.②只能改成he finished his homework before he went to bed或者和①一样.has gone 这种用法一般只用在去一某地还未归,这里不能这样用,只能用went to bed. ④是可以的.
2里面,before表时间一般表示的是“以前做过/未做过某事”,①语法上还算讲得通,但是意思就变成“他以前做过他的作业”,一般无这种用法.同理, ②表示的意思也是“他以前做过他的作业”,不大通顺.③应该是Tom has never been isolated from his friend before吧?这样用是可以的,表示“tom以前从来没有被朋友孤立过”.类似的有He has done this before,表示他以前也这么干过,其实意思上跟he did this before一样的
英语这东西其实哪有这么严格的语法啊,就算一条条列出来也总会有特例,我敢说你们老师讲题的时候肯定这样讲过,“这种用法是个特例”之类的.其实都是中国人自己编出来为难自己的,要想用的熟练就要多读多看,语感有了自然就知道怎么用了.
加油咯~~