Liberar memoria

Jeff
25 de Mayo del 2010
Buenos dias.

Dispongo de un programa que se dispone tanto de un instalar, como de un desinstalar.
En el instalar lo que hago es guardar el antiguo vector de interrupciones, para colocar el de mi interrupcion.
En el desinstalar, hago justo lo contrario, es decir, recupero lo que guardé del antiguo vector y lo coloco nuevamente, para dejar el sistema como estaba.
Mi duda recae en el liberar memoria, que tengo que hacerlo con:
mov ah, 49h
int 21h

Pero claro, falta un parámetro, que es 'es', que se supone que debería apuntar al segmento a liberar, en este caso, PSP.

Al principio del programa, yo guardo ds en psp, que es una variable mia, para guardar dicho contenido.

Mi duda es: a la hora de liberar, puedo hacer directamento 'mov es, psp', o como hice para el segmento y desplazamiento, tengo que usar 'es:segme y es:despla'?

Espero haberme explicado bien.

Saludos y gracias