miércoles, 15 de abril de 2020

2.10 Manipulación de la pila.


La pila es un grupo de localidades de memoria que se reservan para contar con un espacio de almacenamiento temporal cuando el programa se está ejecutando.

La pila es una estructura de datos del tipo LIFO (Last In First Out), esto quiere decir que el último dato que es introducido en ella es el primero que saldrá al sacar datos de la pila.





Para la manipulación de la pila ensamblador cuenta con dos instrucciones específicas, las cuales son las siguientes:

Push:
Esta instrucción permite almacenar el contenido del operando dentro de la última posición de la pila.

Ejemplo:
Push ax    El valor contenido en ax es almacenado en el último espacio de la pila.

Pop:
Esta instrucción toma el último dato almacenado en la pila y lo carga al operando.

Ejemplo:
Pop bx       
El valor contenido en el último espacio de la pila se almacena en el registro
El siguiente ejemplo muestra como implementar la instrucción XCHG por medio de las instrucciones Push y Pop. Recuerde que la instrucción XCHG intercambia el contenido de sus dos operandos. 

.COMMENT
Programa: PushPop.ASM
Descripción: Este programa demuestra el uso de las instrucciones para el manejo de la pila, implementando la instrucción XCHG con Push y Pop
MODEL tiny
.CODE
Inicio: ;Punto de entrada al programa
Mov AX,5 ;AX=5
Mov BX,10 ;BX=10
Push AX ;Pila=5
Mov AX,BX ;AX=10
Pop BX ;BX=5
Mov AX,4C00h ;Terminar programa y salir al DOS
Int 21h ;
END Inicio
END

No hay comentarios.:

Publicar un comentario