Память компьютера можно представлять себе, как массив байт. Получается, что каждый байт памяти имеет свой индекс.
Можно представить, что мы обращаемся по адресу p так: RAM[p]
Адрес ячейки -- это индекс в массиве оперативной памяти.
Адрес переменной часто путают с указателем.
Указатель — это переменная для хранения адреса.
int *p;
При этом int * -- это тип данных "указатель на int"
| &a | операция взятия адреса ячейки памяти, в которой хранится переменная a (если она занимает несколько последовательных ячеек, берется адрес первой) | 
| *p | операция разыменования (обращения по адресу, хранящемуся в p) |