La mayoría de las microprocesadoras de un solo chip contienen circuitos internos como ALU, diferentes tipos de registradores, buses internos, decodificador de instrucciones, microcircuitos de tiempo y control, y registradores auxiliares vinculados a un bus de datos para la comunicación con dispositivos externos. Estos circuitos se dividen en dos unidades principales: ALU y CU, que junto con los buses internos y otros circuitos forman la CPU o MPU de los sistemas microcomputadores. Los criterios para el manejo de datos son similares entre los fabricantes, pero la diferencia radica en la lógica interna de cada CPU y en la sección de tiempo y control del flujo de datos, lo que distingue a cada fabricante. Es relevante mencionar las funciones de los registradores más comunes y básicos en las MPU actuales, que varían según el fabricante.
Hablando de la unidad de tiempo y control, hay varios registradores básicos importantes, como el apuntador, el contador del programa y el registrador-decodificador de instrucción. Algunas CPU también tienen otros registradores como el puntero de apilamiento y los registros de índice para señalar posiciones en la memoria.
En el control y transferencia de datos de instrucciones para seleccionar direcciones en la memoria, los microprocesadores tienen una sección de almacenamiento de 16 bits llamada puntero o contador principal de datos. A veces se llama registro de dirección de datos o registro HL. Su función es delimitar una palabra en la memoria de datos, mediante dos bytes, y dirigir su contenido hacia la posición de memoria RAM deseada para lectura o escritura.
El contador del programa tiene un dato de 16 bits que indica la dirección de la siguiente instrucción en la memoria ROM. Este contador siempre apunta a la ubicación de la próxima instrucción a ejecutar. Al incrementarse en cada instrucción, se siguen las señales de tiempo y control. Las banderas de estado en la ALU permiten tomar decisiones sobre saltos condicionales en la memoria del programa.
El registrador de instrucciones es donde se almacena temporalmente el código de instrucción de 8 bits que se encuentra en la palabra de memoria apuntada por el contador de programa durante la etapa de ejecución. Una vez que la combinación de 8 dígitos binarios se carga en el registrador, se decodifica en la siguiente etapa conocida como decodificación de instrucciones. Las señales decodificadas salen de este registro hacia la sección de codificación de ciclos de máquina, tiempo y control, desde donde se emiten las órdenes para el flujo secuencial correspondiente a la ejecución de la instrucción.
Puntero (indicador) del apilamiento. Para agilizar el manejo de memoria en microcomputadoras, se utiliza un área de la memoria llamada pila o stack. Esta área temporal almacena direcciones de registros de 16 bits para facilitar el procesamiento de datos en programas de forma eficiente.
El registro de índice es esencial para las MPUs que requieren realizar encaminamiento con índice. Al sumar una dirección fija con una variable, se obtendrá una dirección definitiva que se utiliza junto con el registro de índice. Este registro puede aumentar o disminuir en una unidad, permitiendo acceder a posiciones consecutivas de la memoria de forma eficiente.