Hallo Community, Ich habe eine Verständisfrage zu den X Y Z Registern. Ich habe gelernt, mit dem Z-Pointer umzugehen, um fertige Datensätze aus dem CSeg auszulesen. Ich möchte nun mit einem Pointer Daten in den DSeg schreiben und wieder auslesen. Im Tutorial steht, das Z-Register wäre dafür geeignet. Aber nach meinem Verständnis ist das Z-Register ausschließlich im Cseg unterwegs? Welche Funktion haben die X und Y Pointer dann? Anscheinend nicht Dseg und Eseg Pointen? Gruß Markus
Wie wärs denn damit, uns die Lust am raten zu ersparen, wovon überhaupt die Rede ist? Sowohl was die Architektur angeht, als auch was Cseg, Dseg und Eseg sind. Wenn AVR gemeint sein sollte: Die Interpretation des Inhalts der Pointer als ROM- und RAM-Adressen entsteht nicht durch die Register, sondern über die Lade/Speicher-Befehle, die sie verwenden.
Markus schrieb: > Anscheinend nicht Dseg und Eseg Pointen? Wie bitte? > Welche Funktion haben die X und Y Pointer dann? Was steht denn im Datenblatt des unbekannten uCs? Vermutlich gibt es da wie z.B. beim AVR spezielle Befehle, bei deren Verwendung diese Zeiger irgendwo hin zeigen können, und es kommt dann darauf an, was du daraus machst...
Der unbekannte µC ist ein Atmega644P. Also es gibt keinen Unterschied zwischen diesen Pointern? Adresse im Z-Register + lpm = cseg, Adresse im Z-Register + lds = dseg? Ob mans glaubt oder nicht. Das ist ne Frage die mich wirklich bewegt, und eine eideutige Antwort habe ich leider nicht gefunden. Welche Funktion haben dann Y und X Register in der Praxis?
Hi
>Adresse im Z-Register + lds = dseg?
Nein. Sieh dir die Beschreibungen der Befehle st/std/ld/ldd an.
MfG Spess
Markus schrieb: > Welche Funktion haben dann Y und X Register in der Praxis? Adressierung von Daten, deren Adresse nicht feststeht. Ein C Compiler wird ggf. einen dieser Pointer für die Adressierung lokaler Daten verwenden.
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.