Retour d'interruption

S2R Messages postés 25 Date d'inscription vendredi 15 août 2003 Statut Membre Dernière intervention 17 novembre 2004 - 9 mai 2004 à 00:06
S2R Messages postés 25 Date d'inscription vendredi 15 août 2003 Statut Membre Dernière intervention 17 novembre 2004 - 30 mai 2004 à 12:34
Bonjour,
Je n'arrive pas à récupérer l'adresse d'appel d'une int.

J'aurais besoin de pouvoir changer l'adresse de retour d'une int (que j'ai reprogrammée), donc que quand elle est appelée, elle ne retourne pas à la procedure appelant,e mais à une autre procedure.

Je sais que pour récupérer l'adresse de retour d'un call, il suffit de faire un pop, mais ça ne marche pas avec les int.

Si quelqu'un a une solution ou de la doc, ....

Merci.

6 réponses

TangiX Messages postés 59 Date d'inscription dimanche 15 décembre 2002 Statut Membre Dernière intervention 2 juin 2004
9 mai 2004 à 13:14
Je suis pas sur de suivre exactement ce que tu veux faire, mais si tu veux recupere le seg:off d'une int, soit tu les recupere directement ds la table d'int soit tu regarde du coté des fct 25h et 35h de l'int 21h
Mais comme je suis pas sur d'avoir compris ton probleme...
-----------------------------------
fan de prog système (voir taré)
En attente de Valium ! lol
0
S2R Messages postés 25 Date d'inscription vendredi 15 août 2003 Statut Membre Dernière intervention 17 novembre 2004
9 mai 2004 à 16:23
Je veux récupérer l'adresse qui a appellé mon int, donc si dans un code, il y a (par ex.) int 6, je voudrais récupérer l'adresse qui a appelé mon int (à partir de l'int).
voilà, j'espère que c'est plus clair...
0
TangiX Messages postés 59 Date d'inscription dimanche 15 décembre 2002 Statut Membre Dernière intervention 2 juin 2004
9 mai 2004 à 16:31
ah oki ben un iret ca marche comme un ret donc l'adr doit etre sur la pile mais je sais pas dans quel ordre sont empilé le seg et l'offset. essaye de regarder sur la doc officielle d'intel les instructions int et iret, tu aura surement beaucoup de details sur le mechanisme

BonDev'
-----------------------------------
fan de prog système (voir taré)
En attente de Valium ! lol
0
S2R Messages postés 25 Date d'inscription vendredi 15 août 2003 Statut Membre Dernière intervention 17 novembre 2004
9 mai 2004 à 17:22
Ok, merci pour ton aide, je savais où trouver de la doc là dessus, maintenant j'ai trouvé (encore merci), plus qu'a tout mettre en pratique....
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
HCJarod Messages postés 221 Date d'inscription mardi 12 août 2003 Statut Membre Dernière intervention 11 décembre 2008 1
29 mai 2004 à 22:40
Content pour toi! mzis un truc sympa serai de ne pas etre egoiste et de mettre les infos sur le forum!! Ici on demande de l'aide mais on aide aussi...

Chaque problème a sa solution. S'il n'y a pas de solution c'est qu'il n'y a pas de problème.
a+
0
S2R Messages postés 25 Date d'inscription vendredi 15 août 2003 Statut Membre Dernière intervention 17 novembre 2004
30 mai 2004 à 12:34
Pour l'int:
push des flags
push cs
push ip
saute à l'adresse indiquée dans la table d'interrupt.

Pour le iret:
pop ip
pop cs
pop des flags
saute à cs:ip
0
Rejoignez-nous