Como dato constantemente se está trabajando, lo que reduce la necesidad de acceder a la memoria principal (que a menudo es lento en comparación con las unidades ALU y control) aumenta considerablemente la velocidad de la computadora. La memoria principal del ordenador viene en dos variedades principales: la memoria de acceso aleatorio o RAM y la memoria ROM o de sólo lectura. RAM se puede leer y escribir en cualquier momento la CPU ordena, pero ROM es pre-cargado con los datos y software que nunca cambia, por lo que la CPU sólo puede leer de él.
ROM se suele utilizar para almacenar las instrucciones de puesta en marcha inicial de la computadora. En general, el contenido de la memoria RAM se borran cuando el poder de la computadora está apagada, pero ROM conserva sus datos indefinidamente. En un PC, la memoria ROM contiene un programa especializado llamado BIOS que orquesta de cargar el sistema operativo de la computadora desde la unidad de disco duro en la memoria RAM cada vez que el equipo se enciende o restablece.
En ordenadores integrados, que con frecuencia no tienen unidades de disco, todo el software necesario se pueden almacenar en la memoria ROM. Software almacenado en ROM es a menudo llamado firmware, debido a que es teóricamente más como hardware de software. La memoria flash desdibuja la distinción entre ROM y RAM, ya que conserva sus datos cuando están apagados pero también es regrabable. Es típicamente mucho más lento que ROM convencional y la memoria RAM sin embargo, por lo que su uso está restringido a las aplicaciones donde la alta velocidad es innecesario.
[44] En los ordenadores más sofisticados que puede haber una o más memorias caché RAM que son más lentos que los registros pero más rápido que principal memoria. Generalmente los equipos con este tipo de caché están diseñados para mover los datos con frecuencia necesarios en la caché de forma automática, a menudo sin la necesidad de ninguna intervención por parte del programador. Entrada /salida (E