1 Summary

The present perfect is an important verb tense in English. It is used to talk about things that happened at unspecified times in the past. The present perfect makes a connection between the past and the present.

2 Form

To form the present perfect, you need to know how to form the past participle of verbs. With regular verbs, the past participle form is the same as the simple past form--they both end in "-ed." But some verbs are irregular. Note that this is not a complete list of irregular verbs.

3 Expression

The form of the present perfect is "have" or "has" + past participle. With the pronouns "I," "you," "we," and "they," "have" is usually shortened to "'ve" in spoken English. With the pronouns "she," "he," and "it," "has" is usually shortened to "'s" in spoken English.

have/has + seen(been, done, eaten)

My friends have seen that moive.

He's been to Paris.

Mary has done the job.

4 How to use

The present perfect is used for three main purposes.

First, it can show that something happened at an unspecified time in the past. The sentence on the screen tells us that Michael finished his report some time in the past, but we don't know exactly when he finished it. "Already" can be used to emphasize that something happened before now.

Michael has finished his report.

Thomas has left already.

I've already paid for our drinks.

Second, the present perfect can also show that something was repeated at two or more unspecified times in the past. The sentence on the screen tells us that Bob saw a play five times in the past but doesn't tell us when he saw it.

Bob has seen that play five times.

I have been to that restaurant a million times.

Yoshiko has visited France many times.

Finally, the present perfect can be used with "since" or "for" to show that something began in the past and continues into the present. "Since" is followed by the specific time that an action began. "For" is followed by the length of time of an action.

Karl has worked here since January.

Karl has worked here for four months.

I have been here since 7:00 a.m.

I have been here for three hours.

5 Question forms

Use the present perfect to ask if something happened at an unspecified time in the past. The form is "have/has" + subject + past participle. "Ever" after the subject emphasizes that you are asking if something happened at any time at all. "Yet" at the end of the sentence emphasizes that something is expected to happen.

Have you learned to play the piano?

Has she talked to her manager yet?

Has Karl ever visited France?

6 Negative forms

The negative form ("have/has" + "not" + past participle) shows that something didn't happen before now. "Have not" and "has not" are often shortened to "haven't" and "hasn't." "Never" after "have/has" emphasizes that something has not happened. "Yet" at the end of the sentence emphasizes that something might still happen.

have/has + not + (gone, paid, heard, eaten)

We haven't gone to that show.

Joe has not paid for his ticket yet.

Anna has never heard that story.

I have never eaten here.

6-4 The present perfect的更多相关文章

  1. Come and join us at English corner

    2012.12.26 Hi all, How are you doing? Merry post-Christmas and happy upcoming New year!! I wish you ...

  2. 【246】◀▶IEW-Unit11

    Unit 11 Transport 1. Model1题目分析 Some countries attempt to solve the problem of traffic congestion by ...

  3. 留学Essay写作常见谬误盘点

    留学生在完成英语论文作业的时候总会出现各种各样的谬误,导致最后拿不到高分,甚至挂科,最终只得选择写作完成.本文小编为大家总结出我们留学生在essay写作中几个常见谬误,希望大家有则改之,无则加勉. E ...

  4. Machine Learning in Finance – Present and Future Applications

    https://emerj.com/ai-sector-overviews/machine-learning-in-finance/ Machine learning has had fruitful ...

  5. Swift3.0服务端开发(一) 完整示例概述及Perfect环境搭建与配置(服务端+iOS端)

    本篇博客算是一个开头,接下来会持续更新使用Swift3.0开发服务端相关的博客.当然,我们使用目前使用Swift开发服务端较为成熟的框架Perfect来实现.Perfect框架是加拿大一个创业团队开发 ...

  6. 跳转时候提示Attempt to present on while a presentation is in progress

    出现这种情况,例如:我在获取相册图片后,直接present到另一个页面,但是上一个页面可能还未dismiss,所以,要在获取相册图片的dismiss方法的complete的block里面写获取图片及跳 ...

  7. find your present (感叹一下位运算的神奇)

    find your present (2) Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Ot ...

  8. [LeetCode] Valid Perfect Square 检验完全平方数

    Given a positive integer num, write a function which returns True if num is a perfect square else Fa ...

  9. [LeetCode] Perfect Squares 完全平方数

    Given a positive integer n, find the least number of perfect square numbers (for example, 1, 4, 9, 1 ...

随机推荐

  1. ASP.NET Web API决跨域问题

    记录最近一次的项目开发中遇到的问题和解决方式.在给移动端开放数据接口的时候,移动端开放人员反映部署到测试环境的接口调用访问出现了问题,但是在单独进行访问是可以正常的.那么,问题就来了. 根据查询园子里 ...

  2. Java开发笔记(六十五)集合:HashSet和TreeSet

    对于相同类型的一组数据,虽然Java已经提供了数组加以表达,但是数组的结构实在太简单了,第一它无法直接添加新元素,第二它只能按照线性排列,故而数组用于基本的操作倒还凑合,若要用于复杂的处理就无法胜任了 ...

  3. 【.Net Core】获取绝对路径、相对路径

    一.绝对路径 1.获取应用程序运行当前目录Directory.GetCurrentDirectory(). System.IO命名空间中存在Directory类,提供了获取应用程序运行当前目录的静态方 ...

  4. 零基础学Python--------第4章 序列的应用

    第4章 序列的应用 4.1序列 序列是一块用于存放多个值的连续内存空间,并且按上一定顺序排列,每一个值(称为元素)都分配一个数字,称为索引或位置.通过该索引可以取出相应的值.例如,我们可以把一家酒店看 ...

  5. ajax请求code:200但是进入error函数

    1.dataType 由json改成text; 2.后台报错了

  6. 控制台程序(C#)不弹出认证窗口连接到Dynamics CRM Online的Web API

    摘要: 本人微信和易信公众号: 微软动态CRM专家罗勇 ,回复271或者20180602可方便获取本文,同时可以在第一间得到我发布的最新的博文信息,follow me!我的网站是 www.luoyon ...

  7. 《Pro Asp.net core mvc 2》bower问题

    在阅读<Pro Asp.net core mvc 2>中有使用bower管理包,可能是由于vs2017或者bootstrap什么地方改变了,按照步骤进行操作,完全没有对应的样式出现.开始以 ...

  8. vue实现打印功能的两种方法

    第一种方法:通过npm 安装插件 1,安装  npm install vue-print-nb --save 2,引入  安装好以后在main.js文件中引入 import Print from 'v ...

  9. c/c++ 多线程 利用条件变量实现线程安全的队列

    多线程 利用条件变量实现线程安全的队列 背景:标准STL库的队列queue是线程不安全的. 利用条件变量(Condition variable)简单实现一个线程安全的队列. 代码: #include ...

  10. Linux学习历程——Centos 7 grep命令

    一.命令简介 grep 命令用于在文本中执行关键词搜索,并显示匹配的结果. 由于grep命令参数很多,这里只列出一些常用的参数. 参数 作用 -b 将可执行文件当作文本文件来搜索 -c 仅显示找到的行 ...