GUIA DE LABORATORIO 3: INTRUCCIONES DE SALTOS Y PROCEDIMIENTOS
Enviado por LuisDiaz200 • 26 de Febrero de 2019 • Informe • 1.280 Palabras (6 Páginas) • 177 Visitas
GUIA DE LABORATORIO 3: INTRUCCIONES DE SALTOS Y PROCEDIMIENTOS
OBJETIVOS
- Conocer y aplicar las instrucciones de salto disponibles en los procesadores 8086.
- Programar en ensamblador pequeños programas que lleven instrucciones de salto.
- Practicar el uso de ciclos, subrutinas o procedimientos.
- Comprender la utilidad que representa el uso del stack.
INTRODUCCION
Las instrucciones de salto son llamadas instrucciones de control de programa, que dirigen el flujo de un programa y permiten que este cambie. A menudo, un cambio de flujo ocurre después de que una decisión que ha sido tomada con las instrucciones CMP o TEST, es seguida de una instrucción de salto condicional.
Las instrucciones de salto JMP permite al programador omitir secciones de un programa y saltar hacia cualquier parte de la memoria para la siguiente instrucción. Existen saltos condicionales e incondicionales.
Subrutinas
Muy a menudo se encuentra que una sección del programa debe realizar una operación que es muy frecuente. Si el programador recibe esta sección cada vez que se va a utilizar, el programa se vuelve largo y tedioso de escribir. Para optimizar el uso de memoria en programas largos, se hace uso de subrutinas, las subrutinas pueden ser ejecutadas condicional o incondicionalmente.
La instrucción CALL es usada para llamar a la subrutina, su función consiste en dos operaciones:
CALL 1800H
RET
La instrucción RET debe escribir al final de cada subrutina y su función es devolver al programa en el punto donde la subrutina fue llamada.
La pila o STACK
En el diseño de programas, el Stack (pila) se considera como una sección de memoria que tiene un sólo puerto de entrada y uno de salida. Los datos son introducidos y sacados del Stack por medio de esta vía. La pila está organizada bajo lógica LIFO (LAST-IN FIRST-OUT). Podemos la pila como un grupo de objetos que se apilan verticalmente.
En el CPU 8086 las operaciones con la pila se realizan con las instrucciones
PUSH coloca datos en la pila
POP saca datos de la pila
Siempre que se haga uso de la pila en algún programa, el puntero de pila SP debe de inicializarse con la dirección más alta disponible en RAM de esta manera teóricamente toda la memoria puede usarse como Pila.
PROCEDIMIENTO
- Abra el simulador emu8086 haciendo doble clic en el ícono.
- A continuación se muestra un programa que suma los diez números guardados en la dirección de memoria: Lista.
mov si,0h
mov ax,0h
mov cx,10
...