MPLAB Assembler Label Namen

Gast #4279211
Lesenswert?

Hallo,
ich bin gerade dabei eine etwas größeres Projekt mit dem PIC16F887 zu 
verwirklichen.
Ich mache mir gerade aber Gedanken darüber, wie ich den Assembler Code 
möglichst übersichtlich und sauber halte.
Ein Problem dabei was ich habe sind die Label Namen.
Ich kann jedes ja nur einmal verwenden und irgendwann gehen einem die 
kurzen Namen aus.
Insbesondere wenn ich nur in einer Routine temporäre Labels brauche.
Gibt es da eine Möglichkeit "lokale" Labels zu definieren, die nur in 
der definierten Routine gültig sind und ich diese so auch in anderen 
Routinen nochmal verwenden kann ?
Gast #4279243
Lesenswert?

Ja, es kommt aber an manchen stellen bei mir fasst auf jeden Takt an und 
der Free xc8 ist in Sachen Optimierung überhaupt nicht gut.
Ich habe halt keine Kontrolle mehr wievielt Takte jetzt ein bestimmter 
Befehl braucht.
#4279297
Lesenswert?

Servus,

lokale Programm-Labels sind mir bei MPASM (außer ggf. in Makros) nicht 
bekannt.

Zur Übersichtlichkeit trägt aber auch bei, möglichst aussagekräftige 
Namen zu verwenden, und die tendieren naturgemäß dazu, nicht mehr ganz 
so kurz zu sein.
Klar, daß so simple Namen wie "loop", die oft als lokale Labels nützlich 
wären, schnell "verbaucht" sind. Solche "lokalen" Labels könnte man z.B. 
durch Benutzung einer an die Hauptfunktion angelehnten Bezeichnung mit 
einer Erweiterung erstellen. Im einfachsten Fall ist das ein simpler 
Index (..._1, ..._2) , oder auch etwas sinnvolleres (..._lp1, ..._next)
Da die "lokalen" Labels ja nur im unmittelbaren Umfeld interessant sind, 
dürfen die auch etwas kryptischer ausfallen.

z.B.:
ProgrammMachtDas
   <code>
pmd_lp
   <code>
pmd_next
   <code>
pmd_exit
   return

"Ausgegangen" sind mir die Zeichenkombinationen jedenfalls noch nie...
Gast #4279460
Lesenswert?

Ich kann Thomas nur zustimmen!
Labels verbrauchen keinen Speicherplatz und brauchen daher nicht 
besonders kurz oder kryptisch zu sein.

LED2_ON  steht z.B. für bsf PORTB,RB0
DCF_Stunde ist verständlicher als DCF_hh
LED2_OFF ist beser zu lesen als led2off oder LedOff

mfg GroberKlotz

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren