Banderas 386

download Banderas 386

of 2

Transcript of Banderas 386

  • 7/29/2019 Banderas 386

    1/2

    USAC. Electrnica 5

    Material de apoyo

    BANDERAS (EFLAGS)

    Indica la condicin del microprocesador y controla su operacin. Los 8086 a 80286 contienen un registro FLAG

    (registro banderas de 16 bits), mientras que el 80386 y posteriores contienen un registro EFLAG (registro extendido

    de banderas de 32 bits).Los 5 bits de bandera del extremo derecho y la bandera de desbordamiento cambian despus de la ejecucin de

    numerosas instrucciones lgicas y aritmticas. Las banderas nunca cambian por efecto de la transferencia de datos

    u operaciones de control del programa. Algunas se usan para controlar caractersticas del micro.

    3

    1

    2

    1

    20 19 1

    8

    17 1

    6

    1

    5

    1

    4

    13 12 1

    1

    1

    0

    9 8 7 6 5 4 3 2 1 0

    ID VI

    P

    VI

    F

    A

    C

    V

    M

    RF N

    T

    IO

    P 1

    IO

    P 0O D I T S Z A P C

    CF (acarreo): contiene las unidades que se llevan despus de una suma, o las que se prestan despus deuna resta. Tambin indica condiciones de error, segn lo establezcan algunos programas o procedimientos.

    PF (paridad): toma el valor de 0 lgico para paridad impar y de 1 lgico para la par. La paridad es una cuentade los bits iguales a uno de un nmero, expresada como un valor par o impar. Ejemplo, si un nmero

    contiene 3 bits binarios iguales a 1, posee una paridad impar; si un nmero contiene 0 bits iguales a 1, tiene

    una paridad par. Hay pocas aplicaciones para la bandera de paridad en la programacin moderna ya que fue

    incluida en los primeros micros con el fin de verificar datos en ambientes de comunicacin de datos.

    AF (acarreo auxiliar): contiene el acarreo (medio acarreo) despus de una suma o el prstamo despus de laresta entre las posiciones de bit 3 y 4 del resultado. Esta bandera es verificada por las instrucciones DAA y

    DAS para ajustar el valor del registro AL, despus de una suma o resta de cantidades expresadas en BCD. De

    no ser as, ni el micro ni ninguna otra instruccin utilizan la bandera A para otro propsito.

    ZF (cero): indica que el resultado de una operacin aritmtica o lgica es cero. Si ZF=1, el resultado es cero; siSF=0, el resultado es diferente de 0.

    SF (signo): contiene el signo aritmtico de resultado despus de ejecutar una operacin aritmtica o lgica. SiS=1, el bit de signo (el bit del extremo izquierdo de un nmero) se encuentra activado o es negativo; si S=0, el

    bit de signo est inactivo o es positivo.

    TF (trampa): habilita la funcin de captura de errores por medio de una caracterstica de depuracin deldispositivo. (un programa es depurado para encontrar un error o bug). Si la bandera T est habilitada (1),

    el micro interrumpe el flujo de un programa bajo las condiciones especificadas en los registros de depuracin

    y los de control. Si la bandera T est en 0 lgico, la funcin de depuracin se encuentra deshabilitada.

    IF (interrupcin): controla la operacin de la terminal de entrada INTR (solicitud de interrupcin). Si IF=1, laterminal INTR est habilitada; si IF=0, est deshabilitado. El estado del bit IF es controlado por las

    instrucciones STI (activar bandera de interrupcin) y CLI (borrar bandera de interrupcin).

    DF (direccin): selecciona ya sea el modo de incremento o el decremento para los registros DI y SI durante lasinstrucciones de cadena. Si DF=1, los registros disminuyen automticamente; si DF=0, los registros aumentan

    automticamente. La DF se activa con la instruccin STD (activar bandera de direccin) y se desactiva con la

    instruccin CLD (borrar bandera de direccin).

    OF (desbordamiento): el desbordamiento puede ocurrir al sumar o restar nmeros con signo. Undesbordamiento indica que el resultado ha excedido la capacidad de la mquina. Para operaciones sin signo,

    esta bandera es ignorada.

    IOPL (nivel de privilegio de E/S): en el modo de operacin protegido, IOPL selecciona el nivel de privilegio paradispositivos de E/S. si el nivel de privilegio actual es mayor o ms confiable que el IOPLK, E/S se ejecuta sin

  • 7/29/2019 Banderas 386

    2/2

    impedimento. Si el IOPL es menor que el nivel actual, ocurre una interrupcin, ocasionando la suspensin de

    la ejecucin. Un IOPL de 00 es ms alto o ms confiable; si IOPL es 11, ste es el ms bajo o menos confiable.

    NT (tarea anidada): seala que la tarea actual est anidada dentro de otra, en el modo protegido deoperacin. Esta bandera se activa cuando la tarea es anidada por software.

    RF (reanudar): se utiliza durante la depuracin para controlar la reanudacin de la ejecucin despus de lasiguiente instruccin.

    VM (modo virtual): selecciona la operacin en modo virtual de un sistema que se encuentra en modoprotegido. Un sistema de modo virtual permite la coexistencia en memoria de mltiples particiones del DOS

    con longitud de 1 MB cada una. Es decir, permite al programa de sistema ejecutar mltiples programas DOS.

    AC (verificacin de alineacin): se activa al direccionar una palabra o una doble palabra en una direccin queno es un nmero par (para palabras) o mltiplo de 4 (para palabras dobles).

    VIF (interrupcin virtual): es una copia de la bandera de interrupcin que est disponible en los microsPentium y Pentium II

    VIP (interrupcin virtual pendiente): proporciona informacin sobre una interrupcin en modo virtual para losmicros Pentium a Pentium II. Esta informacin es usada en ambientes multitarea para proporcionar al

    sistema operativo informacin sobre banderas de interrupcin virtuales e informacin sobre interrupciones

    pendientes.

    ID (identificacin): seala que los micros del Pentium al Pentium II aceptan la instruccin CPUID (proporcionainformacin sobre el micro, tal como nmero de versin y fabricante).