Buenas,
En la solucion al problema 1 parte B, al hacer los respaldos de los registros realiza:
; Se ubica el ip para el retorno
mov SI, [BP+2]
mov [BP+6], SI
Con esas instrucciones copia el IP, que se encuentra en el stack debido al CALL del procedimiento, hacia abajo en el stack. Cual es la razon de hacer eso? Por que no simplemente dejar el IP en el lugar original del stack y asegurarse al terminar el procedimiento que el SP apunte al mismo para que el RET funcione correctamente?
Gracias por la respuesta.
Saludos