语法点:现在完成进行时 (Present Perfect Continuous)
现在完成进行时的形式是 have / has been + V-ing,用来表示一个动作从过去某时开始,一直持续到现在,而且很可能还会继续下去。它强调动作的"持续过程",常和 all morning、for two hours、since nine o'clock 这样的时间状语连用。和现在完成时(have done)相比,have been doing 更强调"一直在忙着做",而 have done 更强调"已经完成、有了结果"。本课作者说 I have been working hard all morning、I have been trying to get my new room in order,都是在说整个上午一直在干活,而且房间还没收拾好。
结构
| 形式 | 结构 | 例句 |
|---|---|---|
| 肯定 | 主语 + have / has been + V-ing | I have been working hard all morning. |
| 否定 | 主语 + have / has not been + V-ing | She has not been helping me. |
| 一般疑问 | Have / Has + 主语 + been + V-ing? | Have you been working all morning? |
| 特殊疑问 | How long + have / has + 主语 + been + V-ing? | How long have you been trying? |
对比:I have been reading this book.(一直在读,还没读完)/ I have read this book.(已经读完了)。注意 own、have、know、see 等表示状态的动词一般不用进行时。
课文中的例句
- [句 1] We have just moved into a new house and I have been working hard all morning. — 前半句 have moved 是现在完成时(已完成),后半句 have been working 是现在完成进行时(整个上午一直在干)。
- [句 2] I have been trying to get my new room in order. — 现在完成进行时,强调一直在努力,而且房间还没整理好。
- [句 3] This has not been easy because I own over a thousand books. — has not been 是现在完成时的否定;own 是状态动词,用一般现在时。
- [句 4] To make matters worse, the room is rather small, so I have temporarily put my books on the floor. — have put 是现在完成时,说明书已经放在地上(结果)。
- [句 8] 'This is the prettiest carpet I have ever seen,' she said. — 最高级 + have ever seen,现在完成时表示到目前为止的经历。
补充例句
- My sister has been carrying books up the stairs since breakfast. 我姐姐从早饭后就一直在往楼上搬书。
- We have been living in this house for a week. 我们在这所房子里已经住了一个星期了。
- How long have you been reading on the floor? 你在地板上看书看了多久了?
易错点
- ❌ I have working hard all morning. → ✅ I have been working hard all morning. —— 现在完成进行时不能丢掉 been。
- ❌ I am working hard all morning. → ✅ I have been working hard all morning. —— all morning 说明动作从过去持续到现在,要用现在完成进行时,不用现在进行时。
- ❌ I have been owning over a thousand books. → ✅ I own over a thousand books. —— own 是表示状态的动词,不用进行时。
- ❌ She have been helping me. → ✅ She has been helping me. —— 第三人称单数用 has been。