80517A -> AVR ATMega32

OP #546260
Lesenswert?
• ▲
▼
Hallo Leute,
ich arbeite in meinem Studium mit dem 80517A und hier zuhause habe ich 
einen AVR ATMega32. Jetzt möchte ich gerne die Programme aus der Schule 
auch für meinen uC schrieben. Bei einem Befehl habe ich da noch ein 
Problem und weiß nicht wie ich das lösen soll?

Bei dem 80517A ist folgender Befehl: MOV @R0, #0ABh

Das besagt ja, dass an die Adresse, die als Wert in R0 steht, der 
angegebene Wert geschrieben wird.
Nehmen wir mal an in R0 steht eine 40h, dann wird an die Stelle 40h im 
Speicher der Wert ABh geschrieben??? Wie realisiere ich dies mit meinem 
ATMega32?

MfG
Muecke
Gast #546287
Lesenswert?
• ▲
▼
1
ldi R16, 0xAB
2
st z R16
statt r16 geht auch eins der anderen Register 16-31 und statt Z 
(R30:R31) auch X, oder Y
 das ist das 'schöne' an einer Load/Store-Architecture, die Frage ist, 
ob das "st" nötig ist, oder ob du "noch Register frei hast" (besuch mal 
das AVR-Asm-Tutorial hier auf der Seite)

Antwort schreiben

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.

Formatierung
  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] – Link zu einem Artikel
  • Verweis auf einen anderen Beitrag: Rechtsklick auf dessen Beitrags-ID (#8078628), „Adresse kopieren“, in den Text einfügen

Mehr zur Formatierung

Längeren Sourcecode als Anhang, nicht in den Text. JPG nur für Fotos und Scans; Zeichnungen und Screenshots als PNG oder GIF. Siehe Bildformate.

Schon registriert? Anmelden

Wird nicht angezeigt. Wir schicken dir einen Link; sobald du damit bestätigst, erscheint dein Beitrag.

Mit dem Abschicken legst du einen kostenlosen Account an und erkennst die Nutzungsbedingungen und die Datenschutzerklärung an.