lenguaje ensamblador integrantes: esthela vianey vázquez medina no.30 yamileth jannine virgen osuna...

24
Lenguaje Ensamblador integrantes: Esthela Vianey Vázquez Medina No.30 Yamileth Jannine Virgen osuna No. 33 Bautista Huerta Aldo Emmanuel No.5

Upload: ruben-sedano

Post on 22-Jan-2016

216 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Lenguaje Ensamblador integrantes: Esthela Vianey Vázquez Medina No.30 Yamileth Jannine Virgen osuna No. 33 Bautista Huerta Aldo Emmanuel No.5

Lenguaje Ensamblador

integrantes:Esthela Vianey Vázquez Medina No.30Yamileth Jannine Virgen osuna No. 33Bautista Huerta Aldo EmmanuelNo.5

Page 2: Lenguaje Ensamblador integrantes: Esthela Vianey Vázquez Medina No.30 Yamileth Jannine Virgen osuna No. 33 Bautista Huerta Aldo Emmanuel No.5

Comunidad Chol

Winik

Page 3: Lenguaje Ensamblador integrantes: Esthela Vianey Vázquez Medina No.30 Yamileth Jannine Virgen osuna No. 33 Bautista Huerta Aldo Emmanuel No.5

Símbolo

Page 4: Lenguaje Ensamblador integrantes: Esthela Vianey Vázquez Medina No.30 Yamileth Jannine Virgen osuna No. 33 Bautista Huerta Aldo Emmanuel No.5

Registros

BanderaEl Registro de banderas es el que informa al usuario el estado actual delmicro controlador y son manipuladas por las operaciones del CPU.

Page 5: Lenguaje Ensamblador integrantes: Esthela Vianey Vázquez Medina No.30 Yamileth Jannine Virgen osuna No. 33 Bautista Huerta Aldo Emmanuel No.5

Definición Hay nueve indicadores de un bit en este

registro de 16 bits.

Los cuatro bits más significativos están indefinidos, mientras que hay tres bits con valores determinados: los bits 5 y 3 siempre valen cero y el bit 1 siempre vale uno.

BANDERAS

Page 6: Lenguaje Ensamblador integrantes: Esthela Vianey Vázquez Medina No.30 Yamileth Jannine Virgen osuna No. 33 Bautista Huerta Aldo Emmanuel No.5

Como en cualquier otro registro de instrucciones, los bits de este registro se pueden poner en estado alto o bajo por medio de instrucciones.

Sin embargo, solo se pueden usar instrucciones que no afecten el registro de banderas como consecuencia de su ejecución.

BANDERAS

Page 7: Lenguaje Ensamblador integrantes: Esthela Vianey Vázquez Medina No.30 Yamileth Jannine Virgen osuna No. 33 Bautista Huerta Aldo Emmanuel No.5

BANDERA DE ACARREO (CF)Carry Flag Bit 0

La bandera de acarreo se pone en estado alto cuando el resultado de una operación aritmética genera un acarreo o un préstamo. De lo contrario, la bandera de acarreo se pone en estado bajo.

En las instrucciones de rotación y desplazamiento, la bandera de acarreo contiene el ultimo valor del bit que sale del registro en el que se hace la operación.

La bandera de acarreo no se ve afectada por el RESET.

BANDERAS

Page 8: Lenguaje Ensamblador integrantes: Esthela Vianey Vázquez Medina No.30 Yamileth Jannine Virgen osuna No. 33 Bautista Huerta Aldo Emmanuel No.5

Esta bandera se ve modificada por el uso de las siguientes operaciones:

POPF (Extrae los indicadores de la pila)

AAA (Ajuste ASCII para la suma)

ADC (Suma con acarreo) ADD (Suma) DAA (Ajuste decimal para la

suma) AAS (Ajuste ASCII para la

resta) CMP (Comparación) DAS (Ajuste decimal para la

resta) NEG (Negación) SBB (Resta con acarreo) SUB (Resta) IMUL (Multiplicación entera

con signo) MUL (Multiplicación sin

signo) CMPS (Comparación

cadenas) SHL (Desplazamiento a la

izquierda) SAR (Desplazamiento a la

derecha) SHR (Desplazamiento

lógico a la derecha) RCL (Rotación a la izquierda

con acarreo) RCR (Rotación a la derecha

con acarreo) ROL (Rotación a la

izquierda) ROR (Rotación a la

derecha)

Page 9: Lenguaje Ensamblador integrantes: Esthela Vianey Vázquez Medina No.30 Yamileth Jannine Virgen osuna No. 33 Bautista Huerta Aldo Emmanuel No.5

BANDERA DE PARIDAD (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.

BANDERAS

Page 10: Lenguaje Ensamblador integrantes: Esthela Vianey Vázquez Medina No.30 Yamileth Jannine Virgen osuna No. 33 Bautista Huerta Aldo Emmanuel No.5

Esta bandera se ve modificada por el uso de las siguientes operaciones:

POPF (Extrae los indicadores de la pila)

ADC (Suma con acarreo) ADD (Suma) DAA (Ajuste decimal

para la suma) INC (Incrementar) CMP (Comparación) DAS (Ajuste decimal para

la resta) DEC (Decrementar) NEG (Negación)

SBB (Resta con acarreo) SUB (Resta) AAM (Ajuste ASCII para

la multiplicación) ADD (Ajuste ASCII para la

división) OR (O lógico) TEST (Comparación

Lógica) SHL (Desplazamiento

aritmético a la izquierda) SHR (Desplazamiento

lógico a la derecha)

Page 11: Lenguaje Ensamblador integrantes: Esthela Vianey Vázquez Medina No.30 Yamileth Jannine Virgen osuna No. 33 Bautista Huerta Aldo Emmanuel No.5

BANDERA AUXILIAR DE ACARRERO (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.

BANDERAS

Page 12: Lenguaje Ensamblador integrantes: Esthela Vianey Vázquez Medina No.30 Yamileth Jannine Virgen osuna No. 33 Bautista Huerta Aldo Emmanuel No.5

Esta bandera se ve modificada por el uso de las siguientes operaciones:

POPF (Extrae los indicadores de la pila) AAA (Ajuste ASCII para la suma) ADC (Suma con acarreo) ADD (Suma) DAA (Ajuste decimal para la suma) INC (Incrementar) AAS (Ajuste ASCII para la resta) CMP (Comparación) DAS (Ajuste decimal para la resta) DEC (Decrementar) NEG (Negación) SBB (Resta con acarreo) SUB (Resta)

Page 13: Lenguaje Ensamblador integrantes: Esthela Vianey Vázquez Medina No.30 Yamileth Jannine Virgen osuna No. 33 Bautista Huerta Aldo Emmanuel No.5

BANDERA DE CERO (ZF)Zero Flag Bit 6

Para operaciones lógicas y aritméticas, la bandera de cero se pone en estado alto si el resultado es cero. En caso contrario la bandera se mantiene en estado bajo.

Si el resultado de examinar un bit de un registro o de la operación de rotación o desplazamiento es cero entonces la bandera de cero se pone en estado alto. En caso contrario la bandera se mantiene en estado bajo.

La bandera de cero no se ve afectada por el comando de RESET.

BANDERAS

Page 14: Lenguaje Ensamblador integrantes: Esthela Vianey Vázquez Medina No.30 Yamileth Jannine Virgen osuna No. 33 Bautista Huerta Aldo Emmanuel No.5

Esta bandera se ve modificada por el uso de las siguientes operaciones:

POPF (Extrae los indicadores de la pila)

ADC (Suma con acarreo)

ADD (Suma) DAA (Ajuste decimal

para la suma) INC (Incrementar) CMP (Comparación) DAS (Ajuste decimal

para la resta) DEC (Decrementar)

NEG (Negación) SBB (Resta con

acarreo) SUB (Resta) AAM (Ajuste ASCII para

la multiplicación) AAD (Ajuste ASCII para

la división) TEST (Comparación

Lógica) XOR (O exclusivo)

ZF=0 SHR (Desplazamiento

Lógico a la derecha)

Page 15: Lenguaje Ensamblador integrantes: Esthela Vianey Vázquez Medina No.30 Yamileth Jannine Virgen osuna No. 33 Bautista Huerta Aldo Emmanuel No.5

BANDERA DE SIGNO (SF)Sign Flag Bit 7

La bandera de signo guarda el bit mas significativo del resultado de una operación lógica, aritmética, de rotación o de desplazamiento.

Cuando se llevan a cabo operaciones aritméticas con números que tienen signos, la notación binaria de complemento a dos es utilizada para representar y procesar información.

Un numero positivo se identifica con un cero en el bit más significativo, por lo tanto, en este caso la bandera de signo también es cero. Un número negativo es identificado con un 1 en el bit mas significativo, por lo tanto la bandera de signo también es 1.

La bandera de cero no se ve afectada por el RESET.

BANDERAS

Page 16: Lenguaje Ensamblador integrantes: Esthela Vianey Vázquez Medina No.30 Yamileth Jannine Virgen osuna No. 33 Bautista Huerta Aldo Emmanuel No.5

Esta bandera se ve modificada por el uso de las siguientes operaciones:

POPF (Extrae los indicadores de la pila)

ADC (Suma con acarreo) ADD (Suma) DAA (Ajuste decimal

para la suma) INC (Incrementar) CMP (Comparación) DAS (Ajuste decimal

para la resta) DEC (Decrementar) NEG (Negación)

SBB (Resta con acarreo) SUB (Resta) AAM (Ajuste ASCII para

la multiplicación) AAD (Ajuste ASCII para

la división) AND (Y lógico) OR (O lógico) TEST (Comparación

Lógica) SHL (Desplazamiento

aritmético a la izquierda) SAR (Desplazamiento

aritmético a la derecha)

Page 17: Lenguaje Ensamblador integrantes: Esthela Vianey Vázquez Medina No.30 Yamileth Jannine Virgen osuna No. 33 Bautista Huerta Aldo Emmanuel No.5

BANDERA DE TRAMPA (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

BANDERAS

Page 18: Lenguaje Ensamblador integrantes: Esthela Vianey Vázquez Medina No.30 Yamileth Jannine Virgen osuna No. 33 Bautista Huerta Aldo Emmanuel No.5

Esta bandera se ve modificada por el uso de las siguientes operaciones:

POPF (Extrae los indicadores de la pila) XOR (O exclusiva) INT (Interrupción) TF=0 INTO (Interrupción por desbordamiento)

TF=0 IRET (Retorno de interrupción)

Page 19: Lenguaje Ensamblador integrantes: Esthela Vianey Vázquez Medina No.30 Yamileth Jannine Virgen osuna No. 33 Bautista Huerta Aldo Emmanuel No.5

BANDERA DE INTERRUPCION (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.

BANDERAS

Page 20: Lenguaje Ensamblador integrantes: Esthela Vianey Vázquez Medina No.30 Yamileth Jannine Virgen osuna No. 33 Bautista Huerta Aldo Emmanuel No.5

Esta bandera se ve modificada por el uso de las siguientes operaciones:

POPF (Extrae los indicadores de la pila) XOR (O exclusivo) CLI (Baja indicador de interrupción) IF=0 STI (Pone a no el indicador de

interrupción) IF=1 INT (Interrupción) IF=0 IRET (Retorno de interrupción)

Page 21: Lenguaje Ensamblador integrantes: Esthela Vianey Vázquez Medina No.30 Yamileth Jannine Virgen osuna No. 33 Bautista Huerta Aldo Emmanuel No.5

BANDERA DE DIRECCION (DF)Direction Flag Bit 10

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"

BANDERAS

Page 22: Lenguaje Ensamblador integrantes: Esthela Vianey Vázquez Medina No.30 Yamileth Jannine Virgen osuna No. 33 Bautista Huerta Aldo Emmanuel No.5

Esta bandera se ve modificada por el uso de las siguientes operaciones:

POPF (Extrae los indicadores de la pila) STD (Pone a uno el indicador de

dirección) DF=1 IRET (Retorno de interrupción)

Page 23: Lenguaje Ensamblador integrantes: Esthela Vianey Vázquez Medina No.30 Yamileth Jannine Virgen osuna No. 33 Bautista Huerta Aldo Emmanuel No.5

Para operaciones aritméticas de rotación o de desplazamiento, la bandera de sobreflujo se pone en estado alto cuando el resultado es más grande que el máximo número posible (mayor de 127) o menor que el numero mínimo posible (menor que –128) que puede ser representado en la forma de complemento a dos.

La bandera de sobreflujo se mantiene en estado bajo si no ocurren sobreflujos.

La bandera de sobreflujo no se ve afectada por el RESET.

BANDERAS

BANDERA DE SOBREFLUJO (OF)Overflow Flag Bit 11

Page 24: Lenguaje Ensamblador integrantes: Esthela Vianey Vázquez Medina No.30 Yamileth Jannine Virgen osuna No. 33 Bautista Huerta Aldo Emmanuel No.5

Esta bandera se ve modificada por el uso de las siguientes operaciones:

POPF (Extrae los indicadores de la pila)

ADC (Suma con acarreo)

ADD (Suma) INC (Incrementar) CMP (Comparación) DEC (Decrementar) NEG (Negación) SBB (Resta con

acarreo) SUB (Resta) IMUL (Multiplicación

entera con signo) MUL (Multiplicación sin

signo) SAR (Desplazamiento

aritmético a la derecha)

SHR (Desplazamiento lógico a la derecha)