Das geht folgendermaßen:
lds r24, {Variablenname}
für z.B. für eine Byte-Variable in das Register r24.
Für Word könnte man verwenden
lds r24, {WordVariable}
lds r25, {WordVariable+1}
Für Long ist folgende Variante kürzer:
loadadr VariablenName, X ' Adresse in X laden
ld r20, X+
ld r21, X+
ld r22, X+
ld r23, X+
loadadr ist eine BASCOM-Funktion, welche benötigt wird, um die von Bascom vergebene Adresse für eine Variable in ein Pointer-Registerpaar X (r26,r27) oder Z (r30,r31) zu laden. Y (r28,r29) darf nicht verwendet werden, da hier Bascom den Soft-Stack verwaltet.
Wieso Du in Deinem Post r16 bis r28 noch einmal erwähnst, da diese ja schon in R0 - r31 enthalten sind, ist mir nicht klar?







Zitieren
Lesezeichen