现在我们要来学习情态动词+完成时的用法,当然包括了大家最关心的虚拟语气. - ~+ D5 u$ b8 Z. `
1. may和might+ 动词完成式
9 S y/ @/ U1 F 此结构用于推测过去的行为。例如:
* v! u; I" y6 ^+ b; ^& I5 O: J; N. T" } She said that he might have missed the plane.她说他可能误了航班。 2 y( u4 j8 a# u0 v/ v
2. can和could+ 动词完成式
. C' W J6 ~0 ^ A. 表示过去能做而没做的事,有一种对过去未付诸实施的事情的惋惜。例如:* Z9 C9 l( V9 N! n& ?; u, q
In those circumstances we could have done better. l2 B2 h9 N* E4 l7 Q" B
在那样的情况下,我们本来可以做得更好的。(但没有做得更好)! d4 h% {" P- v4 f( E; b
B. 推测过去的某种行动。
( _2 W% x; ~! P( z Where can /could she have gone? 她可能到哪里去了呢?
5 k" g2 }* u- ` The boy can’t have finished reading the book so soon because it is difficult even to an adult.
3 r- O& D4 Y# I9 E, | 这孩子不可能那么快就把这本书读完的,因为即使对一个成人来说,这本书也是相当难的。6 X$ L' S; ~( P2 v
Note:
' p9 s: R q$ W. `# Q( Y, Q" P can’t和couldn’t+ 动词原形可以用来表示否定推断。例如:
% ]3 W# f4 M z He can’t be over fifty.他不可能超过50岁。
0 j1 T. F' W9 a w1 v 3.must +动词完成式9 Z, o i1 u+ O) a
表示对过去行为的推断,具有较大的可能性,意为“一定…,想必…”。例如:; k# I$ Z/ B, O8 T4 ^; h: `
She must have gone through a lot.5 k5 l W- H# E( H0 K
她一定吃过很多苦。. q' T# h$ j1 n7 t; ^# m; p
Note:
1 O m2 R5 ]& d6 {% a* k must+动词原形→对现在的推测,must be+现在分词→对未来或现在正在进行的推测。例如:! `' g" o" V. \: v U; f/ I, o" K% c
She looks happy; she must be having a good time. 8 I) u! T1 m4 g B; m; s
4. needn’t+动词完成式和didn’t need to do# Z2 B) \! d2 B
A. needn’t+动词完成式表示一种已经做过的但并无必要的行为。例如:% X% Y6 |) C0 E' W, C
You needn’t have watered the flowers, for it is going to rain.
! ?7 s9 K1 I( h4 k; s1 h& X& t 你本来不必浇花的,因为天要下雨了。(但却浇了)
9 A' u% l A. q6 C( Y6 g* n We needn’t have told him the news because he knew it already.
6 x" h1 y, @7 v B. didn’t need (have) to do结构表示没有必要做某事,实际上也没有做。例如:# |$ g6 I) \0 Z) ?& }
I didn’t need to clean the windows. My sister did it.
% y+ m$ R1 @7 N5 I 我不必擦窗,我妹妹擦了。(我没有擦)
' b2 J( a8 C8 F 5. should +动词完成式
. H5 v1 t' Q0 ~$ ^* ]4 f6 r A.此结构的肯定式表示应该做的事而没有做,否定式表示某种行为不该发生但却发生了。例如:
- g0 u( Z* K" `6 D5 ] You should have given her more help.
4 K; @% z' q( \ 你应该多给她一些帮助的。(但没有给)0 m2 U* V$ {, K2 [1 z. T
B. 表示推测,意为“可能”,但可能性较小。例如:
/ S' O/ p! p7 s+ U0 _3 b2 A7 S He should have finished the work by now.
- p( B, t! F: Q9 |# S; V( d3 T 他现在该把工作完成了。(推测)( \# Y, r2 F5 u0 I
C. should / would have thought意为“本以为,本认为”。例如:8 _* m2 @* Y) n& w
A: "Can you type?"# G5 ?/ J/ X' P7 Q2 C, y9 d
B: "Certainly."5 T1 ]% e# z5 a+ d0 E c+ H7 S
A: "Well, I should have thought you wouldn’t."- u+ c0 c' A8 o( n1 m) o
I should have thought she wouldn’t agree.6 l8 B2 |/ ^2 f* x
我本来认为她不会同意的。6 V+ Y4 a- q8 D3 X% T- J8 ?
D. should have thought有时意为“认为,以为”,相当于should think,但表示更为委婉、谦逊或不肯定的语气。例如:# d7 L A8 @* }) }: S
I should have thought it fairly good.
3 u7 z/ x* L# I$ H 我以为它是很不错的。
2 X/ S: W: u- m& d E. should have + 过去分词用于虚拟语气:4 R0 F5 R" w5 y' ?) i& {% }
Had you written him, you should have known the details.8 ^, Z8 v/ B. }6 d/ _
6. ought to + 动词完成式
% @# i; o+ h1 p/ m! O 此结构表示某种过去应该做而没有做的事,或被忽略未做的某种明智行为。例如:
% O( \! K) m1 E7 q You ought to have returned the book earlier.(还晚了). ~: y' Z2 C8 ~0 J
You ought to have refused her at the beginning, but now it is too late.0 |9 I" [1 m2 B" l
Note:/ p9 |. R" N5 }
这里的ought to也可以用should代替。 |