Registeradressierungen

Gast #3207053
Lesenswert?
• ▲
▼
Bin gerade dabei mir die Mikrocontroller Programmierung zu erlernen, was 
in der Praxis auch schon gut klappt.

Dank den tollen Tutorials zum Thema AVR hier hab ich schon einige kleine 
Projekte ausprobieren können.

Aber ich möchte auch die tiefere Funktion dahinter verstehen, und da 
scheitert es bei den Adressierungsarten.

Wsl liegt es daran, dass ich nur in "C" programmiere und wenig Ahnung 
von Assembler habe..


Kann mir jemand die Adressierungsarten

-unmittelbare (oke das ist logisch)
-direkte
-Registeradressierung
-Registerindirekte Adressierung (m. Postinkremente?!)
-Indizierte
-Implizite

logisch, vl mit Beispielen kurz erklären?
Die Erklärungen im Netz sind wir nicht ganz logisch,..



Vielen Dank
#3207060
Lesenswert?
• ▲
▼
Peter. K schrieb:

> Kann mir jemand die Adressierungsarten
>
> -unmittelbare (oke das ist logisch)

lade das Register mit einem Wert

> -direkte

lade das Register mit einem Wert, den du unter dieser Speicheradresse 
findest

> -Registeradressierung

Das ist mir nicht klar, was du damit meinst. Ich denke da ist einfach 
nur gemeint, dass ein Register ja auch eine wie auch immer geartete 
Bezeichnung haben muss um es anzusprechen
Also: Lade ein Register mit einem Wert, den du in einem anderen Register 
findest.

> -Registerindirekte Adressierung (m. Postinkremente?!)

lade ein Register mit einem Wert, wobei die die Speicheradresse aus der 
der Wert geholt werden soll, selbst aus einem Register stammt.

> -Indizierte

Ist so ähnlich wie die Registerindirekte Adressierung, nur dass es noch 
zusätzlich ein Register mehr gibt, welches in die Adressberechnung 
eingeht. Eben das Index-Register

> -Implizite

IMplizite Adressierung nennt man es, wenn ein Befehl sowieso nur auf 
bestimmte 'Adressen' und/oder Register angewendet werden kann. Im AVR 
wäre zb ein MUL (also eine Multiplikation) sowas. Multiplkand und 
Multiplikator müssen in bestimmten Registern stehen, das Ergebnis 
ensteht bestimmten Registern.

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.