Page 2 sur 2

Re: Comment utiliser une variable d'un DB global ?

Posté : 05 avr. 2020, 18:01
par djé
Différence entre adressage absolu et symbolique:

Absolu : l'adresse est prioritaire, c'est à dire que dans ton code partout où une adresse est utilisée, c'est celle ci qui prime par dessus le mnémonique.
Symbolique : le symbole est prioritaire: dans ton code partout où un mnémonique est utilisé, c'est celui ci qui prime par dessus l'adresse.

Exemple concret:

t'es en adressage prioritaire et tu affectes tes entreés comme suit: (adresse : mnemo)

I0.0 : BPMarche
I0.1 : BPArret
I0.2 : BPAU


Tu codes ton programme, a plusieurs endroits tu utilises ces informations ; le dessinateur revient vers toi et te dis j'ai changé changé le câblage (pourquoi?) maintenant c'est :
I0.0 : BPAU
I0.1 : BPArret
I0.2 : BPMarche

Lorsque tu effectues le changement dans la table de mnémoniques, tu définis désormais que I0.0 c'est BPAU et et I0.2 c'est BPMarche.
Inconvénient :Il faut maintenant que tu te paluches (itasoft si tu lis) tout ton programme pour le remodifier en changeant les adresses. I0.0 devient I0.2 et vice-versa partout dans le code : relou.

Maintenant, si tu es en mode Mnémonique prioritaire tu fais le changement dans la table de mnémonique, tu mets à jours la cohérence des blocs (compilation) et le tour est joué. Les adresses on suivi automatiquement puisque les mnémoniques eux n'ont pas changé.

J'ai pris un exemple simple, mais imagine en phase conception lorsque tu tritures les données car rien n'est figé, tu peux insérer des variables en plein milieu d'un DB sans prendre le risque de tout décaler tes adresses!

Après il ne faut pas changer le mnémonique en cours de route, sinon c'est mort.

Si néanmoins, tu souhaites changer le mnémonique en cours de route, repasse en adressage Absolu, change le mnémonique et repasse en prioritaire.

En phase de dev c’est vraiment utile. Après en phase Test ou mise en route, c'est pratique aussi, mais plus risqué car souvent la compilation te fais réinitialiser les valeur de DB ce qui peut être (très)gênant.

Re: Comment utiliser une variable d'un DB global ?

Posté : 08 avr. 2020, 22:38
par Wow400
Désolé Djé, j'avais pas vu ton post.
Merci pour cette précision je pensais que la différence était là mais je n avais aucune certitude.
C'est trop cool j'apprends plein de truc .