It is important not to confuse the name  of a verb tense with the way we use it to talk about time.

For example, a present tense does not always refer to present time:

  • I hope it rains tomorrow.
    "rains" is present simple, but it refers here to future time (tomorrow)

Or a past tense does not always refer to past time:

  • If I had  some money now, I could buy it.
    "had" is past simple but it refers here to present time (now)

The following examples show how different tenses can be used to talk about different times.

TENSETIME
past timepresent timefuture time
presentsimple want  a coffee.leave tomorrow.
She     likes     coffee.
continuous am having dinner.am taking my exam next month.
They  are  living  in  London.
perfecthave seen ET.have finished. 
perfect continuoushave been playing tennis.  
We  have been working for four hours. 
pastsimplefinished  one hour ago.If she loved  you now, she would marry you.If you came  tomorrow, you would see her.
continuouswas working at 2am this morning.  
perfecthad not eaten  for 24 hours.  
perfect continuousWe  had been working for 3 hours.If I had been working now, I would have missed you.If I had been working tomorrow, I could not have agreed.
futuresimple Hold on. I'll do it now.I 'll see you tomorrow.
continuous  will be working at 9pm tonight.
perfect  will have finished by 9pm tonight.
We  will have been married for ten years next month.
perfect continuous  They may be tired when you arrive because they will have been working.
In 30 minutes, we will have been working for four hours.

sources : Original Link