La diferencia clave entre la dirección lógica y la dirección física es que la CPU genera una dirección lógica durante la ejecución del programa, mientras que la dirección física es una ubicación en la unidad de memoria.
En términos simples, la CPU genera la dirección lógica o la dirección virtual. Desde la perspectiva de un programa que se está ejecutando, un elemento parece estar ubicado en la dirección proporcionada por la dirección lógica. La unidad de memoria observa la dirección física. Además, permite acceder a una determinada celda de memoria en la memoria principal mediante el bus de datos.