lunes, 25 de febrero de 2019

1 .Registro de Banderas ensamblador 8086

Registro de banderas:


Es un registro de 16 bits, de los cuales nueve sirven para indicar el estado actual de la maquina y el resultado del procedimiento.

Cada bandera es un bit y se usa para registrar la información de estado y de control de las operaciones del microprocesador. Hay nueve banderas (los 7 bits restantes no se utilizan):

Banderas de estado:
Registran el estado del procesador, normalmente asociado a una comparación o a una instrucción aritmética.

  • CF (Carry Flag): Bandera de acarreo.
  • OF (Overflow Flag): Bandera de desbordamiento (aritmético).
  • ZF (Zero Flag): Bandera de resultado 0 o comparación igual.
  • SF (Sign Flag): Bandera de resultado o comparación negativa.
  • PF (Parity Flag): Bandera de paridad (número par de bits).
  • AF (Auxiliary Flag): Bandera auxiliar. Indica si hay necesidad de ajuste en las operaciones aritméticas con números BCD.


Banderas de control:
  • DF  (Direction Flag): Bandera de dirección. Controla la dirección de las operaciones con cadenas de caracteres (sentido de avance ascendente/descendente). Incrementando o decrementando automáticamente los registros índices (SI y DI)
  • IF (Interrupt Flag): Bandera de interrupciones. Indica si están permitidas o no las interrupciones de los dispositivos
  • externos.
  • TF (Trap Flag): Bandera de atrape. Controla la operación de modo paso a paso (usada por el programa DEBUG).



► vídeo
[008] Registro de Banderas | Banderas en Ensamblador 8086




Programa 1:

Código:


cf:bandera de acarreo
programa: .model small .stack .data .code mov al, 2 ;1 mov bl, 2 ;4 sub al, bl .exit end

La bandera ZF sirve para indicar que el valor del resultado es cero:






Programa 2:

Código:



org 100h

.model small
.stack
.data

.code
     mov al,255
     mov bl,1
     add al,bl
     
.exit
end


Para activar la bandera CF haremos una suma, una suma entre 2 números, en este caso 255 + 1, de manera que supere el límite del registro inferior.



Programa 3:

Código:

org 100h

org 100h

.model small
.stack
.data

.code
     
     mov al,1
     mov bl,4
     sub al,bl

.exit
end

ret




En el caso de SF esta se encenderá al obtener un resultado negativo en los registros:



Programa 4:

.model small
.stack
.data
.code
    mov al,100
    mov bl,50
    add al,bl

.exit
end          
     

La bandera OF se llevara a cabo cada vez que se lleve a cabo un acarreo de unidad aritmético, ejemplo, si sumamos 100 + 50, tendremos un acarreo de 5 decenas en la parte de la suma para generar el numero 150.
   

No hay comentarios:

Publicar un comentario

3. Colores Modificado 9

Modificación del programa # 9 " Colores " Por mi compañero Ambrocio isaias Laureano CR EQU 13 ;Declaro retorno de carro LF...