Zona HTML Zona Java Zona PHP Zona ASP Zona Bases de datos
Inicio > Foros > Ensamblador > ¿Como se reprograman las interrupciones?
-Foros de debate

Ensamblador
Lista de foros | Lista de mensajes de este foro

Privacidad: Recuerde que la información escrita en los foros de programación es 100% pública y que su ip será registrada asociada a su mensaje. Si encuentra un mensaje fuera de lugar, por favor, notifiquelo para su revisión y eliminación.

¿Como se reprograman las interrupciones?
Enviado por Martin Palermo el día 4 de enero de 2005

¿Como se reprograman las interrupciones?

 
Re: ¿Como se reprograman las interrupciones?
Enviado por alex el día 11 de enero de 2005

No se a que te refieres realmente, pero cuando yo tocaba ensamblador, las interrupciones tenian lo siguiente:
a) se guarda la direccion de la rutina que las atiende
b) Se modifica ese valor con la direccion de tu rutina de atencion a la interrupcion
c) Cada vez que se recibe una int, tu rutina es llamada y al final de hacer lo que tu necesites debes de \\\"agradecerla\\\" con las siguientes lineas:
mov al, 20h
out 20h, al
d) Al final debes salir de la rutina con un \\\"iret;\\\"

No se si estoi te sirve para algo...pero bueno por si acaso

 

Re: ¿Como se reprograman las interrupciones?
Enviado por Velo el día 7 de febrero de 2005

Existe una interrupcion (mira en la lista de Ralf Brown), que te permite modficar el (vector de interrupciones*) de manera que una posicion de ese vector apunte a una rutina creada por ti que sera la encargada de gestionar dicha interrupcion. Antes de redireccionar una interrupcion (suele ser la de reloj 1Ch) es importante guardar el segmento i el OFFSET de la rutina original que gestionaba la interrupcion, y es necesario volver a modificar el vector de interrupcion al final del programa para que vuelvaa apuntar a la rutina del sistema.

*=>Por si andas un poco despistado te dire que el vector de interrupcion es un vector con tantas posiciones como interrupciones posibles, al que el sistema acude para buscar que rutina ejecutar cuando ha ocurrido una interrupcion determinada. Por ejemplo en la posicion 1Ch del vector se encuentra la direccion de la rutina del clock.




No se si te servira de ayuda porque ahora leiendolo no lo entendi ni yo :)

 

Re: ¿Como se reprograman las interrupciones?
Enviado por maikel el día 28 de marzo de 2005

Si necesitas ayuda puedo enviarte las macros que te permiten ller, escribir y restaurar los vectores de interrupción, verás que facil te es todo

 


Tienda
Patrocinados
 

Copyright © 1999-2006 Programación en castellano. Todos los derechos reservados.
Formulario de Contacto - Datos legales - Publicidad

Hospedaje web y servidores dedicados linux por Ferca Network