sábado, 17 de octubre de 2015

CLASE # 4


REGISTRO DE ESTADO



Se trata de unos registros de memoria en los que se deja constancia de algunas condiciones que se dieron en la última operación realizada y que podrán ser tenidas en cuenta en operaciones posteriores. Por ejemplo, en el caso de hacer una resta, en el registro de estado queda constancia de si el resultado fue cero, positivo o negativo, o si se sobrepasó la capacidad de representación.


       ESTADO DE REGISTRO DE BANDERAS
     
       
  • CY  SI HAY ACARREO
Es cuando hay un acarreo o préstamo en el bit mas significativo en una operación aritmética.



http://ncalculators.com/images/formulas/hex-numbers-addition.jpg


Ø MOV   AL,FF H
Ø MOV   BL,55 H
Ø ADD    AL,BL
Ø CF=1

Ø MOV   BH,011 H
Ø MOV   BL,42 H
Ø ADD    BH,BL
Ø CF=0

  • PE  PARIDAD PAR
Se usa para indicar igualdad y si el resultado del registro es válido, se conoce contando los unos que hay en el registro, si la cantidad de unos es par el registro es paridad par y si la cantidad de unos es impar el registro es paridad impar, este sirve para detectar errores en las transmisiones.


http://www.ecured.cu/images/2/21/Tabla_impar.png

        EJEMPLO
 Ø Mov Ax, FFFFh
Ø  Mov Bx, 1h
Ø  ADD Ax,Bx
Ø  PF=1

Ø Mov AL, 4Fh
Ø Mov BL, 40h
Ø ADD AL,BL
Ø PF=0
  • AC  HAY ACARREO AUXILIAR
Es cuando se presenta un acarreo en la mitad de la operación matemática o lógica del registro.
        
EJEMPLO
    žØ Mov Al, 70H
   Ø Mov Bl, 2H
   Ø Div Al, Bl
   Ø AF=0

   Ø Mov Al, 70H
   Ø Mov Bl, 2H
   Ø Div Al, Bl
   Ø AF=0
  • ZR  EL RESULTADO ES CERO
Es cuando el resultado de la operación es cero.


EJEMPLO

    EAX=100
  ECX=200
  SUB EAX,EAX  ; Resultado = 0 ZF = 1
  ADD EAX,ECX ; Resultado = 200 ZF = 0

  Ø Mov AH, FF H
  Ø Mov CL, FF H
 Ø SUB AH, CL
 Ø ZF=1

 Ø Mov   BH, 01 H
 Ø DEC  BH
 Ø ZF=0

  • PL  POSITIVO

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.


EJEMPLO
       
    Ø Mov Ax, 1H
   Ø Mov Bx, 2H
   Ø Sub Ax, Bx
   Ø -1
   Ø SF=0

   Ø Mov Ax, 2H
   Ø Mov Bx, 2H
   Ø ADD Ax, Bx
   Ø 4
   Ø SF=1

  • EI   INTERRUPCIONES ACTIVADAS
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.


  • UP  HACIA ADELANTE

Si vale 1, las instrucciones con cadenas sufrirán "auto-decremento", 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".
  • OV  SI HAY OVERFLOW
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.




EJEMPLO

    Ø mov al, 140/2
     add al, 1
     ;hay overflow, al= 71


 

No hay comentarios:

Publicar un comentario