mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik Register verwenden


Autor: Heiko (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Guten Tag

Ich arbeite mich seit ein paar Wochen in die Materie AVR ein da
blutiger Anfänger.
Mir ist aufgefallen das bei jedem Tutorial mit Register r16 begonnen
wird und dann rauf gezählt wird d.h. r16, r17, r18 usw.!
Warum werden die Register r0 bis r15 nicht verwendet?
Gibt es so ne Art Leitfaden wann man welches Register verwendet? Im
Netz habe ich leider nichts gefunden!

Autor: crazy horse (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
das kommt daher, dass man erst ab r16 mit Konstanten direkt arbeiten
kann. Das betrifft die Befehle ldi,subi,andi,ori u.ä.. Ein Befehl
ldi r2, 45 z.B. ist also nicht möglich.
Weitere Besonderheiten betreffen das r0 (wird automatisch als
Zieladresse benutzt bei LPM) und die Indexeregister X,Y,Z.

Autor: Chris (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Guck mal bei Atmel auf die Homepage, da gibt es das Instruction Set
Document. Für jeden Befehl wird angegeben mit welchen registern du es
benutzen kannst.

http://www.atmel.com/dyn/resources/prod_documents/...

Autor: Gerd (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert

Autor: Peter Dannegger (peda)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Grob gesagt, alle Befehle mit einem "I" am Ende (LDI, ORI, SUBI usw.)
gehen nur mit R16..R31.
Dabei ist zu beachten, daß SBR  CBR verkappte ORI  ANDI Befehle
sind.


Peter

Autor: Gerd (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Sorry, Link muss richtig heißen
http://www.avr-asm-tutorial.net/avr_de/beginner/re...

MfG
Gerd

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.