El registro de estado, también conocido como registro de bandera, palabra de estado de programa y registro de código de condición, se define como un conjunto de bits de bandera dentro de un procesador. Un registro es un circuito de procesador y es muy parecido a una ubicación de memoria, lo que significa que los datos se pueden escribir y leer desde él. A diferencia de una ubicación de memoria, el registro de estado no suele tener una dirección porque el microprocesador la usa internamente. En una unidad central de procesamiento (CPU) de 8 bits, se puede establecer un bit de registro de estado, igual al número 1, o borrarlo, igual al número 0, mediante una variedad de resultados de operación del procesador. El procesador a veces establece o borra los bits por sí mismo, pero otras veces, una instrucción de programa en particular establece o borra los bits.
Los bits de registro de estado también se denominan banderas, o bits de banderas, y el programador los utiliza para ciertos propósitos de programación. Cada bandera en un registro de estado tiene un propósito único. La bandera de acarreo se activa si una operación anterior hizo que el séptimo bit, o la bandera negativa, se desbordara o que la bandera de acarreo se desbordara. Se establece durante los cambios de lógica, comparación y aritmética. La bandera de cero se activa si el resultado de la operación más reciente fue 0.
Una bandera llamada «desactivación de interrupciones» opera al permitir o no permitir la operación de interrupciones, que son instrucciones que detienen temporalmente ciertas operaciones para que se puedan realizar otras operaciones. Cuando se establece esta bandera en particular, no se permite que operen las interrupciones, pero cuando está despejado, se permiten las interrupciones. Otro indicador llamado indicador decimal permite al procesador seguir un modo binario más avanzado para realizar ecuaciones aritméticas impecables. Cuando se establece la bandera, utiliza este modo binario avanzado. Otro bit de registro es el bit de bandera de interrupción, que se activa cuando se ejecuta el comando Forzar interrupción (BRK).
Un indicador de desbordamiento se activa durante las operaciones aritméticas si una operación produce un resultado no válido. El indicador negativo se establece si el resultado de la operación más reciente lo tenía establecido en 1. Un último indicador, llamado bit 5, no tiene nombre y siempre se establece en 1. Los programadores esencialmente no utilizan este bit en particular.
El registro FLAGS es un ejemplo de un registro de estado que se utilizó en ciertas unidades centrales de procesamiento y contenía los estados actuales de un procesador. Tenía 16 bits de ancho y fue reemplazado por EFLAGS y RFLAGS, un registro de 32 bits y un registro de 64 bits, respectivamente. Sin embargo, el registro FLAGS tenía algunos indicadores que eran diferentes del registro original de 8 bits, incluido el indicador de paridad, el indicador auxiliar y el indicador de trampa.