La memoria principal es el lugar donde se almacenan tanto los programas como los datos que usa el programa, de manera que es una de las partes fundamentales de la arquitectura de von Neumann. En una primera aproximación se puede ver la memoria principal como un conjunto de celdas capaces de almacenar información, bien sean instrucciones del programa, bien sean datos en forma de números o caracteres alfanuméricos. Cada una de dichas celdas está identificada unívocamente por un número al que llamaremos a partir de ahora dirección de memoria.
La memoria principal suele ser una memoria volátil, es decir, que al interrumpirse el flujo de corriente eléctrica (cuando se apaga la computadora) pierde todos sus datos.
La memoria principal debe ser una memoria de acceso aleatorio o RAM (Random Acces Memory). Esto significa que el procesador puede acceder directamente, sin necesidad de leer las casillas anteriores, a la información de cualquier casilla de la memoria.
Como ya hemos mencionado, la memoria se estructura en casillas. Cada casilla tiene capacidad para almacenar un byte, es decir, 8 bits. Cada casilla, a su vez, está numerada, y a este número lo llamaremos dirección de memoria. En la memoria se almacenan tanto los datos como las instrucciones del programa que se está ejecutando. Es condición imprescindible, pues, que antes de ejecutar un programa éste se cargue en memoria (recordemos que éste es uno de los aspectos cruciales de la arquitectura von Neumann).