一般过去时态和现在完成时态之间到底有什么区别?通过一道语法题,帮你彻底讲清楚!

现在完成时态和一般过去时态

现在完成时态和一般过去时态有同学在群里问了一道关于“现在完成时态和一般过去时态之间区别”的语法题,摘录如下:

There is someone knocking at the door.

—— It must be the computer repairman.

—— I ______ him to come to fix my computer.

A. call B. have called C. called D. will call

群内同学众说纷纭,但是答案集中在B和C两个答案之间,有的认为B正确,该选现在完成时态,有的认为C正确,该选一般过去时态,也有的同学认为B和C两个答案都对,应该都可以选择,那么到底应该如何选择呢?

这时,我们就需要了解现在完成时态和一般过去时态之间到底有何区别?

我们先来看看一般过去时态的时空作用域, 如下图所示:


一般过去时态

从上图可以看出,一般过去时态的时空作用域是发生在过去,也就是说其时效性局限于过去,对现在没有影响。

我们再来看看现在完成时态的时空作用域, 如下图所示:


现在完成时态

从上图可以看出,现在完成时态的时空作用域从过去延伸到现在,也就是说其时效性从过去延续到现在,对现在产生影响。

这就是为什么现在完成时态的动作发生在过去,但是其时间助动词(has/have)又是现在的原因。

这也就是为什么现在完成时态不能够和表示具体的过去时间状语连用的原因。

好了,我们现在已经了解了现在完成时态和一般过去时态之间最主要的区别,那么我们再回到文首的语法题上。

There is someone knocking at the door. ——有人在敲门。

—— It must be the computer repairman. ——一定是修电脑的。

—— I ______ him to come to fix my computer. ——我_____他来修电脑。

上面B. have called 和 C. called 选项中都可以表达“打过电话”这一内涵,但是对话设定的语境是因为(过去)打过电话这个事件,导致(现在)有人来敲门这个事件,也就是过去的事件对现在产生了影响,这也正好符合了现在完成时态的时空作用域的定义。

选项B. have called 表达出“刚打过电话”这一思维内涵。

选项C. called 表达出“打过电话”,但是何时打电话则不够明确,是刚刚打,还是昨天打的,还是前天打的,还是更久以前打的,不明确,所以和对话设置的语境稍微有些不合。

所以综合起来,选项C不能认为是错的,只是选项B. have called此处更符合语境设置。

好了,到此我们就通过简简单单的一道语法题重温了一遍一般过去时态和现在完成时态的用法,关于这两个时态还可以参考下面这篇文章:英语思维:解密语法 - 一般过去时态和现在完成时态之间的区别真的很简单。

本文作者谢瑞,著有《英语思维:解密英语语法的原理》一书和《英语思维:10小时建立完美语法体系》系列视频课程,致力于原创英语语法学习文章写作,欢迎转载,转载请注明出处。

你可能感兴趣的:(一般过去时态和现在完成时态之间到底有什么区别?通过一道语法题,帮你彻底讲清楚!)