mikrocontroller.net

Forum: Compiler & IDEs Bytereihenfolge von Variablen


Autor: Sf2 (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hi. ich hab mal ne frage zu dem vom compiler erzeugten code:
Ich hab eine Delay schleife geschreiben und dann mir mal in avrstudio
angeschaut:

da steht am anfang:
LDI R24, 0x63
LDI R25, 0x00

und später werden dann die 2 register als word angesehen:
SBIW    R24,0x01

jetzt meine frage:
Wie muss ich die beiden register Lesen ?
wenn ich es richtig verstenden habe, muss ich nicht
0x63 0x00 (99 00) sondern
0x00 0x63 (00 99) lesen

werden eigentlich alle variablen typen so gelesen ? Werden auch Char
Constanten verkehrt herum im speicher abgebildet?

MfG Sf2

Autor: Stefan May (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ja, das ist beim AVR so. Das nennt sich Little Endian, d.h. das
niederwertige Byte steht am Anfang. Es gibt auch Big Endian Systeme,
bei denen die Reihenfolge im Speicher "richtig" ist. Beispiele sind
Motorola CPUs oder auch Sparc-Prozessoren.

Dazu auch: http://de.wikipedia.org/wiki/Little-Endian

mfg, Stefan.

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.