Bienvenue aux nouveaux arrivants sur FantasPic !

- Pensez à lire les règles durant votre visite, il n'y en a pas beaucoup, mais encore faut-il les respecter .
- N’hésitez pas à faire des remarques et/ou suggestions sur le Forum, dans le but de l'améliorer et de rendre vos prochaines visites plus agréables.
- Vous pouvez regarder votre "panneau de l'utilisateur" afin de configurer vos préférences.
- Un passage par "l'utilisation du forum" est recommandé pour connaître les fonctionnalités du forum.

--- L’équipe FantasPic ---

Suite de "Petite anomalie de MPASM"

http://www.fantaspic.fr/viewtopic.php?f=11&t=947

Forum général sur l'Assembleur !

Modérateur : mazertoc

JJE
Passionné
Passionné
Messages : 399
Enregistré en : novembre 2017
Localisation : Picardie

Suite de "Petite anomalie de MPASM"

Messagepar JJE » sam. 20 juil. 2019 19:19

re-bonjour à tous,
J'ai fait disparaître l'anomalie signalée dans le post en référence, en ajoutant un "endif" tout à fait au hasard, chose que je n'aime pas du tout comme beaucoup de nous je pense.
L'un d'entre-vous a-t-il connaissance d'un éditeur de source MPASM qui saurait apparier les if et les endif ?
Mon source est un gros fichier (plus de 4000 lignes) comportant de nombreux if, certains étant très éloignés de leur endif :? , je n'y arrive pas à la main malgré plusieurs essais :cry:
Merci d'avance
Cordialement

JJE

C'est pas parcequ'on n'a rien à dire qu'il faut fermer sa G....e

Avatar de l’utilisateur
paulfjujo
Expert
Expert
Messages : 2597
Enregistré en : juillet 2015
Localisation : 01800
Contact :

Suite de "Petite anomalie de MPASM"

Messagepar paulfjujo » dim. 21 juil. 2019 09:49

bonjour JJE et à tous,


"Diviser pour mieux régner ..."
Methode dichotomique .
essaie de decouper/compiler ton programme en 2
... etc .


avec mikroC j'ai eu un probleme similaire avec un oubli de parenthese..
jamais signalé par le compilo , même avec une declaration de fonctions préalable.!
ex: CLRF1; au lieu de CRLF1(); // envoi CR puis LF sur le terminal
sans les parentheses , n'est jamais exécuté
n'empeche pas le programme de tourner avec ses défauts.
dans ce cas précis c'etait assez visible au niveau resulat , mais s'il s'agissait de calcul
on peut chercher longtemps pourquoi un resultat est éronné.
Aide toi, le ciel ou FantasPic t'aidera

JJE
Passionné
Passionné
Messages : 399
Enregistré en : novembre 2017
Localisation : Picardie

Suite de "Petite anomalie de MPASM"

Messagepar JJE » dim. 21 juil. 2019 10:18

merci paulfjujo de ce conseil que j'ai déjà pratiqué sans succès, il faut dire que ce fichier est un vrai patchwork. Je pense avoir le temps de commencer une série de posts à son sujet aujourd'hui, si tu as le temps, tu comprendra :-)
Cordialement

JJE

C'est pas parcequ'on n'a rien à dire qu'il faut fermer sa G....e

satinas
Expert
Expert
Messages : 1225
Enregistré en : novembre 2015

Suite de "Petite anomalie de MPASM"

Messagepar satinas » dim. 21 juil. 2019 16:29

Bonjour,
Etant adepte des sources à rallonge, ce type de problème m'arrive aussi, surtout en C. Alors bien sûr la première protection, c'est l'indentation.
Ensuite lorsqu'une erreur est difficile à trouver car non localisée, pourquoi ne pas isoler des blocs de programme en les entourant par "if 0" et "endif". En recompilant, on a des messages d'erreurs qui s'ajoutent, pas grave, on sait pourquoi.
Petit à petit on arrive à faire disparaître l'erreur en question, et ainsi comprendre d'où elle vient.

JJE
Passionné
Passionné
Messages : 399
Enregistré en : novembre 2017
Localisation : Picardie

Suite de "Petite anomalie de MPASM"

Messagepar JJE » dim. 21 juil. 2019 16:54

merci satinas
Cordialement

JJE

C'est pas parcequ'on n'a rien à dire qu'il faut fermer sa G....e

satinas
Expert
Expert
Messages : 1225
Enregistré en : novembre 2015

Suite de "Petite anomalie de MPASM"

Messagepar satinas » dim. 21 juil. 2019 17:21

Quand le endif est éloigné du if, ou s'il y a imbrication de plusieurs if, mettre un commentaire sur les lignes endif, qui permet de remonter au if.

et sous Windows, une commande pour lister tous les if et endif :
findstr /c:"if " /c:"endif" file.asm > debug.txt

JJE
Passionné
Passionné
Messages : 399
Enregistré en : novembre 2017
Localisation : Picardie

Suite de "Petite anomalie de MPASM"

Messagepar JJE » dim. 21 juil. 2019 19:49

merci satinas, je n'avais pas dû être assez persévérant
Je ne m'en suis pas servi, mais j'avais oublié cette commande findstr
merci encore, je vais dîner le cœur plus léger :-)
Cordialement

JJE

C'est pas parcequ'on n'a rien à dire qu'il faut fermer sa G....e


Retourner vers « Langage ASM »

Qui est en ligne

Utilisateurs parcourant ce forum : Aucun utilisateur enregistré et 44 invités