docoo
La pila
La pila es una zona de memoria dinámica orientada a la gestión de subrutinas y funciones en lenguajes de nivel médio o bajo (también puede haber algún lenguale de alto nivel que haga uso de ella) en este caso haremos referencia a R-V. La pia es un protocolo de reservar memoria de valores altos a bajos con el fin de no intervenir en en la memoria reservada para el programa principal, que reserva memoria desde valores menores a mayores.
En R-V la pila está marcada por el puntero de pila (sp), lugar donde se almacena la direción que ocupa.
    # EL PUNTERO DE PILA ESTÁ INICIALIZADO POR DEFECTO EN CASO DE SER LA PRIMERA VER
    # O MARCADO POR LA ULTIMA LLAMADA HECHA.
    # ------------------------------------------------------------------------------
    # PARA RESERVAR ESPACIO SE HACE REDUCIENDO LA DIRECCION DEL (sp)
    add sp , sp ,-16
    
    # PARA GUARDAR EN LA PILA ES UN PROCESO DE GUARDAR EN MEMORIA.
    # **** COMO PROTOCOLO SE SUELE USAR (EN CASO DE NECESITARSE) EL (ra) EN SU VALOR MÁS ALTO
    # ES NUESTRO CASO LA CASILLA CON DIRECCION 12 PORQUE HEMOS RESERVADO 16 Y ES 4 LA LONGITUD DE PALABRA
    sw ra , 12(sp)
    sw t1 , 8(sp)
    sw t2 , 0(sp)

    
    # LA RECUPERACIÓN DE MEMORIA TAMBIEN TAMBIEN ES UN PROCESO DE LECTURA DE MEMORIA 
    # OBLIGATORIA EN EL CASO DE HABER GUARDADO EL (ra)
    lw ra , 12(sp)
    
    #FINALMENTE LA LIBERACIÓN DE MEMORIA SE REALIZA HACIENDO EL PROCESO INVERSO A LA RESERVA 
    add sp , sp , 16 
    

La reserva de memoria en la pila se hace en paquetes de 4 en 4 palabras (16,32 ,....)

Hay que tener en cuenta que la liberación de memoria tiene que no perder la sincronía de la reserva para evitar desajustes.

--