You are on page 1of 7

4.1.

2 Saltos, subrutinas e
interrupciones
Cambambia Rivera Francisco
Padilla Cepeda Estefana

Salto
Incondicional

- LJMP
addr16
- AJMP
addr11
- SJMP rel

Subrutina

- LCALL
addr16
- ACALL
addr11
- CALL
etiqueta

Indirecto

- JMP
@A+DPTR

Es un punto de un programa
informtico donde el flujo del
programa se ve alterado. Los
trminos de salto o rama suelen
utilizarse para referirse a
programas escritos en lenguaje
mquina o en lenguaje
ensamblador; en los lenguajes de
alto nivel, los saltos normalmente
toman la forma de sentencias
condicionales, llamadas a
subrutinas o sentencias GOTO.

Efectivo
Principalmente hay dos formas de
instruccin de salto: el salto
condicional que puede ser efectivo o
no segn una determinada
condicin, como por ejemplo el
contenido de algn registro de la
CPU; y el salto incondicional que
siempre se realiza.

Flujo de
programa
no cambia e
instruccin
ejecutada
posteriorme
nte como
est en el
cdigo.

No
efectivo
La siguiente
instruccin
ejecutada
ser aquella
marcada
como
destino del
salto.

Subrutina
Es una porcin de cdigo que forma
parte de un programa ms grande.

Llama
das

Ventajas:

Reduccin de cdigo duplicado.

Permite el reusar el cdigo en


mltiples programas.

Descomposicin de problemas
complejos en simples piezas (lo que
aumenta la mantenibilidad y
extensibilidad).

Aumenta la legibilidad del cdigo de


un programa.

Retornad
as

Interrupcion

Es una seal de llamada


que detiene temporalmente
la ejecucin del programa
principal para realizar una
nueva tarea (o como
multitarea).
Una interrupcin de hardware
(hardware interrupt) provoca que
el procesador salve su estado de
ejecucin a travs de una
conmutacin
de
contexto
(context switch) y comience la
ejecucin de un manejador de
interrupcin (interrupt handler).

Tipos de
interrupciones
Interrupciones
internas de
hardware
Generadas por
ciertos eventos que
surgen durante la
ejecucin de un
programa.

Interrupciones
externas de
hardware
Las generan los
dispositivos
perifricos, como
pueden ser: teclado,
impresoras, tarjetas
de comunicaciones,
etc. Tambin son
generadas por los
coprocesadores.

Interrupciones
de software
Pueden ser activadas
directamente por el
ensamblador
invocando al nmero
de interrupcin
deseada con la
instruccin INT.