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 ---
Forum général sur l'Assembleur !

Modérateur : mazertoc

sécuriser un branchement calculé (computed GOTO)
JJE
Passioné
Passioné
Messages : 399
Âge : 83
Enregistré en : novembre 2017
Localisation : Picardie

#1 Message par JJE » mar. 30 janv. 2018 11:05 lien vers la Data-Sheet : Cliquez ici

Bonjour,
il est probable que j'enfonce une porte ouverte pour beaucoup mais tant pis.
Microchip attire bien l'attention sur les problèmes de frontières de pages de ses processeurs MidRange (voir Data-sheet) mais peut-être un peu moins sur les frontières de blocs de 256 mots de programme rencontrés dans des branchements calculés

Code : Tout sélectionner


    addwf    PCL
,f

Sans précautions, cette instruction peut causer des ennuis détectables à la compilation par 3 petites lignes

Code : Tout sélectionner


messages
    addwf    PCL
,f
message1    dt     
"   Hello Word   "
finmessages    dt    0
    if high
(messages) != high(finmessages)
        error    "La table message franchit une frontière de bloc."
    endif

On n'a plus à se préoccuper de la place de ce segment de code dans le programme, l'assembleur nous informera s'il est mal placé, ce n'est pas très cher :-D
On peut remplacer la directive error par messg mais c'est moins sécuritaire.

Toutes mes excuses à ceux qui y avaient déjà pensé

Cordialement
Cordialement

JJE

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

sécuriser un branchement calculé (computed GOTO)
F6FCO
Avatar de l’utilisateur
Expert
Expert
Messages : 1413
Âge : 70
Enregistré en : décembre 2017
Localisation : Furtif je suis.
Contact :

#2 Message par F6FCO » sam. 3 févr. 2018 20:39 lien vers la Data-Sheet : Cliquez ici

Merci JJE, çà me servira certainement :wink:
Une porte nand prend 2 bits en entrée... la cochonne !!! :langue:


Retourner vers « Langage ASM »

Qui est en ligne

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