The use of present perfect and past tense in Danish is pretty much as in English. Present perfect is in fact a kind of present: it refers to actions that are important in the present, although they started or took place in the past.
Jeg har spist (=I have eaten) basically means: Jeg er mæt (I am full) - where and when I ate is irrelevant - only the result counts.
Past on the contrary describes actions that took place at a given time and place. I ate a lot at the end of diet party. Time or place might not be mentioned, but still past tense refers to a specific scene in the past.