Im newbie at reverse engineering and I was wondering what is the meaning of declaration var_18 = byte ptr -18 and the others like it in the picture.

I know that byte ptr means it is a pointer to a byte variable, but why does it have negative value. And also why do all of them have the same address?