如:did not see. did 表示絕對的過去時間,see為非謂語動詞一般態。表示那時沒有看到,符合題意,所以答案正確。
B選項
現在完成時態的本質為動作狀態發生的時間和現在產生了聯絡,但實質動作是在過去,
如:have not seen, have 表達絕對的現在時間。而seen的動作實質是發生在過去,而seen本身是非謂語動詞完成態,是不含有時間的,但是seen的動作有相對的時間,即相對於現在時間have的過去。所以現在完成時態的實質是have這隻“手”把過去的動作seen的效果拉到了現在,表示了動作的新鮮性,即到現在為止“還沒有看到”。 這很明顯是違背題意的。
其實你只是分不清,一般過去時態和現在完成時態而已!
你提供的例句:
I"ve done this before.
本質上是一個錯誤的句子。 have 是現在時間,而before指過去。時間的邏輯上是錯誤的。 下面會有帖子詳細講解。
下面簡單的給出一般過去時態和現在完成時態的本質區別:
1. 一般過去時態,時間是過去,動作狀態都在過去,和現在毫無瓜葛;
2. 現在完成時態,時間是現在,(但是)動作狀態都在過去,因此過去對現在有了影響。
完成時態最核心的內容是對have的理解,你理解了have,你也就真正理解了一切的完成時態。
Have的本質是一個功能詞,其沒有任何具體意義,僅是告知你:“我(have)雖然表示現在,但是我後面的動詞卻是在過去發生的”。
前面講了過去時態的影響力只在過去,那如果過去時態對現在還有影響怎麼辦?這時候完成時態橫空出世,即透過have這個功能詞過去時態的影響力拉倒現在。
簡單的說,現在完成時態應用的場景就是現在怎麼樣、現在什麼結果、現在什麼狀態。
如:
我吃過飯了。
1. I ate.
過去吃的,和現在沒關係。
I have eatten.
過去吃的,和現在有關係。have表達“剛發生”,表達“飽著呢”。現在的狀態或者結果就是吃過了。
所以現在完成時態本質是過去時態,但是橋接了現在時態,也就是其動作效果橫跨了過去時間和現在時間。
在看完成進行時態have been doing.
如:
我一直在吃.
I have been eating. 我一直在吃。
相當於 I was eating 和 I am eating的合體,即過去一直吃到現在。
所以現在完成進行時態相當於過去進行時態+現在進行時態。
進一步關於一般過去時態和現在完成時態的比較請參考下面的帖子:
過去一般時態和現在完成時態本質區別?大多數學生都分不太清楚一般過去時態和現在完成時態的區別。 但是一般過去時態和現在完成時態在英語這門語言中有清晰使用邊界,其區別是鮮明的。
如:新聞播報裡經常說到某某人去世了,你覺得應該如何翻譯呢?
是:
He died. 他去世了。
還是:
He has died. 他去世了。
一、一般過去時態:
定義:時間僅指過去,和現在毫不相干,如下圖所示:
I ate an apple.
我吃了一個蘋果。
解釋:ate本質上是did eat的結合體,did為時間助動詞,表示過去時間;eat為狀態主動詞,表示一般態(陳述);ate這個動作發生在過去,和現在毫不相干。
一般過去時態可以和表示過去的時間狀語連用,其關注和有效的時間落點如圖1所示在過去。
I wrote a book last year.
二、現在完成時態
定義:時間涉及到過去到現在的這段時間,如下圖所示:
I have eaten an apple.
我吃了一個蘋果。
解釋:have為時間助動詞,表示現在時間;eaten為狀態主動詞,表示動作完成;eaten這個動作實質上是過去發生的,但是為了強調其影響力已經延續並影響到了現在所以結合了have助動詞。
現在完成時態中的have是現在時間,其本質是現在時態,所以其不能和絕對的過去時間狀語連用,比如不能和yesterday, five days ago, 1980等。現在完成時態其關注和有效的時間落點如圖2所示為過去和現在的這段時間。
所以
I have written a book last year.
是錯誤的句子,因為last year是表達過去時間的。
一般過去時態和現在完成時態的區別總結:
一般過去時態的動作和狀態影響力僅在過去,其可以和表示絕對過去的時間狀語連用。
現在完成時態的動作和狀態影響力從過去觸及到了現在。其不可以和表示絕對過去的時間狀語連用。
但是無論是一般過去時態還是現在完成時態都可以和表示一段的時間狀語連用,如:
He lived here for five years.
他在那裡住過5年。
He has lived here for five years.
他在那裡住5年了。
Five years僅僅是一個時間段,其並不是絕對的現在、過去時間。
最後在回到文首的問題:
He died.
他去世了。
He has died.
他去世了。
現在完成時態表達了過去動作狀態對現在的關聯性,表示出其新聞的新鮮時效性特點,所以一般都是用現在完成時態。
一般過去時和現在完成時態試題分析:過去一般時態和現在完成時態涇渭分明。
過去一般時態,時間是”過去”,狀態是“一般”。
現在完成時態,時間是"現在“,狀態是”完成。
D選項
過去一般時態的本質為動作狀態發生的時間就是在過去,跟現在毫無瓜葛。
如:did not see. did 表示絕對的過去時間,see為非謂語動詞一般態。表示那時沒有看到,符合題意,所以答案正確。
B選項
現在完成時態的本質為動作狀態發生的時間和現在產生了聯絡,但實質動作是在過去,
如:have not seen, have 表達絕對的現在時間。而seen的動作實質是發生在過去,而seen本身是非謂語動詞完成態,是不含有時間的,但是seen的動作有相對的時間,即相對於現在時間have的過去。所以現在完成時態的實質是have這隻“手”把過去的動作seen的效果拉到了現在,表示了動作的新鮮性,即到現在為止“還沒有看到”。 這很明顯是違背題意的。
這裡也看出的完成時態have的內涵——對謂語而言,相對於自身時間的提前;對非謂語動詞而言即為相對於謂語動詞時間的提前。
A選項
don"t see 意思為現在也沒有看見,人家告訴你了,你扭頭就可以看見,所以不能說現在還沒有看見,違反題意。
C選項
wasn"t seen 被動語態,翻譯為“我沒有被看見。。。” 完全錯誤。
語法不好,英語肯定不會好,而時態是語法的核心。英語的時態不僅僅是上面提到的20個主動時態,相應的包含20個被動時態,也包含了虛擬語氣部分、也包含了非謂語動詞短語的時態,可以說,學習英語語法,就是在學習時態。