Aquí hay un diagrama de bloques de una variante 8051. Probablemente hay cientos de arquitecturas de microcontroladores diferentes. La mayoría son más complicadas que la 8051 (por lo que la elegí, por su relativa simplicidad), y pueden tener características adicionales como DMA (acceso directo a memoria), canalización, cachés, etc., pero casi todas tienen que comenzar con los componentes básicos que se muestran aquí: memoria de programa, memoria de datos (separada en una arquitectura de Harvard, la misma en una arquitectura de von Neumann), decodificación de instrucciones, acumulador (es) y / o archivo de registro, ALU, lógica de interrupción y periféricos. (El 8051 tiene un caché de instrucciones rudimentario que puede mirar hacia delante 6 instrucciones).
El 8051 es una máquina basada en acumuladores que también tiene un conjunto de cuatro archivos de registro que en realidad están ubicados en la RAM. Es un microcontrolador de 8 bits, por lo que el bus de datos tiene 8 bits de ancho.
Tenga en cuenta que, en todas partes, los datos deben almacenarse fuera del bus de datos, hay pestillos. Los datos pueden ser transferidos desde y hacia el acumulador. La ALU (unidad lógica aritmética) tiene dos registros para almacenar sus dos operandos, uno de los cuales puede provenir del acumulador y el otro una fuente de bus de datos (memoria o registro periférico, por ejemplo), o ambos del bus de datos (en el que En caso de que el primero se mantenga en uno de los registros ALU mientras que el segundo está cargado). El registro B solo se utiliza para la instrucción de multiplicación. Cada uno de los puertos tiene su propio pestillo. Los temporizadores tienen registros implícitamente dentro de ellos.