begin process at 2012 05 25 10:20:29
  Trouver un code source :
 
dans
 
Accueil > Forum > 

Archive Assembleur

 > 

Archives

 > 

Autres asm

 > 

Sous-procedure externe en Assembleur ?


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

Sous-procedure externe en Assembleur ?

mercredi 12 janvier 2005 à 12:40:37 | Sous-procedure externe en Assembleur ?

cbil



débutant en c/c++, flash et asm- Me contacter

Bonjour à tous,

J'utilise TASM et j'aimerais faire une sous procedure externe.

J'ai tester un exemple, (je n'utilise pas la pile pour les passages de parametre mais les registres), c'est a dire qu'un programme principal appelle une procedure qui lui appel une autre procedure (la sous-procedure). Au niveau de la compilation, il n'y a aucune erreur ni warning. Mais au lancement, cela ne marche pas (en fait, il execute la sous-procedure une fois mais c'est a la deuxieme (dans une boucle) que cela ne veut pas....

(je met extrn sousproc... dans la procedure puis call pour l'appelé)

Comment integré une sous-procedure externe ? (je ne veut pas la mettre en interne, que je souhaite reutilise la sous-procedure dans une autre procedure)...

Vous me suivez ?

Indice (lorsque je retire le jmp pour ma boucle tant que, ca marche (la sous procedure est appelé une seul fois), sinon, le message me dit que j'ai essayé d'essayer d'acceder à un endroit protege (ou que j'ai execute une instruction interdite, je ne sais plus)))...

Merci d'avance ! A bientot !


(au fait, mes messages sont-il placé dans la bonne rubrique ? (je ne sais pas trop dans quel rubrique ou placer les prog asm avec tasm))

merci
mercredi 12 janvier 2005 à 14:29:33 | Re : Sous-procedure externe en Assembleur ?

SystemOfAXav

Salut,
Tu peux mettre le code stp, parceque sans ça va pas être facile de t'aider ;o)

Voila, voila...
@+ Syst3mOf@Xav

Voir Redmond et mourir !
mercredi 12 janvier 2005 à 15:34:11 | Re : Sous-procedure externe en Assembleur ?

patatalo

Membre Club Administrateur CodeS-SourceS
salut,

en fait, c'est que ta boucle doit etre executée quelques millions de fois et a mon avis ton esp est modifié a chaque occurence de la boucle.

Je m'explique:
--------------

loop2error:
push eax
call tasousroutine
jmp looptoerror

au bout d'un moment, on va depasser la capacité de la pile.

2eme possibilité:
----------------

tasousroutine:
  ; fait ce quelle a a faire.
  ret 4 <- ca pourrait etre la que ca va pas.

loop2error:
 call tasousroutine
 jmp loop2error

cela pourrait etre du a une mauvaise declaration import/export et au bout d'un moment, on essai de depiler un element qui n'existe pas.
dimanche 16 janvier 2005 à 15:55:24 | Re : Sous-procedure externe en Assembleur ?

cbil

débutant en c/c++, flash et asm- Me contacter

Reponse un peu tardive !

Je pensais en fait qu'il fallait faire attention a quelque chose de particulier....

J'ai reussi a faire marcher ma sous-procedure en faisant un push dx puis pop dx entre l'appel de la procedure..... (pourtant je ne me sert pas de dx dans la sous-procedure)

Par contre, je l'ai reutilisé avec une autre procedure (qui comporte cette fois-ci une boucle (non infinie) avant l'appel de la sous-procedure. Et dans ce cas, j'ai la meme erreur qu'avant, mais quelque soit le push et pop des registres, l'erreur est toujours présente.

Enfin, c'est pas grave...mais si je trouve la raison, je répondrait pour terminer ce sujet....

Merci.........


Cette discussion est classée dans : utilise, assembleur, asm, procedure, externe


Répondre à ce message

Sujets en rapport avec ce message

Question ASM [ par LordBob ] Bonjours a tous,voila en fait j'aimerais me lancer dans la programmation en assembleur, je viens donc d'acheter un petit bouquin qui traite du sujet e OS -> passer d'ASM au C pour la programmation [ par djmoa ] Bonjour. j'ai quelques notions d'assembleur, et j'aimerai commencer la programation d'un petit OS, me basant sur des choses existant, mais je vois bea Où avez vous appris l'assembleur [ par Joe0557 ] Bonjour, Je m'interresse depuis quelques temps à la programmation en ASM, mon projet final serait de faire un OS (je sais qu'il est très compliquer d' Quel est l'assembleur le plus rapide ? [ par epineurien ] Salut à tous !Une nouvelle question , suite à quelques infos trouvées sur le net ...J'utilise MASM32 , mais de nombreux sites dises qu'il produit un c Que peux t-on faire avec l'assembleur que l'on ne peux pas faire avec d'autres langages [ par Nixeus ] Bonjour à tous,Je sors de BTS Info, et suis développeur de logiciel depuis plus d'un ans dans une société. Ayant obtenu mon BTS l'an dernier, je n'ai procedure asm [ par yasmus ] salut je suis un étudiant en 1ere année tronc commun on viens de commencer les procédure je me demande comment on fait pour définir les paramètre de l nombre aléatoire en asm 16f84 [ par sodhaine ] Bonjour,Je suis un newbie-moyen en assembleur/électronique; j'essaie de faire un dé électronique en assembleur 16f84 (avec affichage sur écran LCD) e Besion info importante assembleur/desassembleur [ par PatSW ] Bonjour,je suis présentement en train de modifier un fichier execute que jai décompiler avec W32Dasm et toute mes modifications jusqu'a présent sont p compte a rebour et exit en asm [ par zerolol ] Salut.Comment faire un compte a rebour dans une fenetre avec le decompt en visuel et fermeture auto du prog.merci pour vo explication. nasm - mémoire read-only [ par Funto66 ] Bonjour,je suis en train d'écrire des tutoriaux pour le site Coder-Studio (http://www.coder-studio.com/?page=tutoriaux) mais pour la création du tutor


Nos sponsors


Sondage...

Comparez les prix

CalendriCode

Mai 2012
LMMJVSD
 123456
78910111213
14151617181920
21222324252627
28293031   

Consulter la suite du CalendriCode

A découvrir



 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,749 sec (3)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales