Registro de banderas en emu8086
El registro
cuenta con 16 bits, los cuales nos ayudan a indicar el estado actual de la
maquina y el resultado del procesamineto.
CF (Carry Flag, bit 0): Si vale 1,
indica que hubo "arrastre" (en caso de suma) hacia, o
"préstamo" (en caso de resta) desde el bit de orden más significativo
del resultado. Este indicador es usado por instrucciones que suman o restan
números que ocupan varios bytes. Las instrucciones de rotación pueden aislar un
bit de la memoria o de un registro poniéndolo en el CF.PF (Parity Flag, bit 2):
Si vale uno, el resultado tiene paridad par, es decir, un Número par de bits a
1. Este indicador se puede utilizar para detectar errores en transmisiones.
Registro
de Banderas AF (Auxiliary carry Flag, bit 4): Si vale 1, indica
que hubo "arrastre" o "préstamo“ del nibble (cuatro bits) menos
significativo al nibble más significativo. Este indicador se usa con las
instrucciones de ajuste decimal.ZF (Zero Flag, bit 6): Si este indicador vale
1, el resultado de la operación es cero.SF (Sign Flag, bit 7): Refleja el bit
más significativo del resultado. Como los números negativos se representan en la
notación de complemento a dos, este bit representa el signo: 0 si es positivo,
1 si es negativo.
Registro
de Banderas TF (Trap Flag, bit 8): Si vale 1, el procesador está
en modo paso a paso. En este modo, la CPU automáticamente genera una
interrupción interna después de cada instrucción, permitiendo inspeccionar los
resultados del programa a medida que se ejecuta instrucción por instrucción.IF
(Interrupt Flag, bit 9): Si vale 1, la CPU reconoce pedidos de interrupción
externas enmascarables (por el pin INTR). Si vale 0, no se reconocen tales
interrupciones. Las interrupciones no enmascarables y las internas siempre se
reconocen independientemente del valor de IF.
Registro
de BanderasDF (Direction Flag, bit 10): Si vale 1, las
instrucciones con cadenas sufrirán "autodecremento", esto es, se
procesarán las cadenas desde las direcciones más altas de memoria hacia las más
bajas. Si vale 0, habrá "auto-incremento", lo que quiere decir que
las cadenas se procesarán de "izquierda a derecha".OF (Overflow flag,
bit 11): Si vale 1, hubo un desborde en una operación aritmética con signo,
esto es, un dígito significativo se perdió debido a que tamaño del resultado es
mayor que el tamaño del destino.

Comentarios
Publicar un comentario