Adresse inkrementieren in Assembler

Gast #256737
Lesenswert?
• ▲
▼
Hallo,

ich habe eine Schleife in Assembler, bei der bei jedem
Schleifendurchlauf ein neues Register für das Abspeichern von Daten
benutzt werden soll.

Beim ST7 (den ich im Gegensatz zu den AVRs bislang bereits mehrfach in
ASM programmiert habe) schreibt man einfach (irgendeinregister,X) und
inkrementiert X dann einfach bei jedem Durchlauf. Er soll also zunächst
irgendeinregister benutzen, dann das was danach kommt, etc.

Wie löst man das beim AVR?

Gruß
Christoph
#256740
Lesenswert?
• ▲
▼
Und wie wäre es mit "ST X+,rn"?
X ist der 16 Bit Pointer bestehend aus r27:r26, es gibt auch noch Y
(r29:r28) und Z (r31:r30).
rn ist eines der Register r0 bis r31.
STS ist für direkten Speicherzugriff ohne Pointer.
Und beim AVR kommt das Ziel immer zuerst, also "Befehl Ziel,Quelle".

MfG
Andi
Beitrag #6126794 wurde von einem Moderator gelöscht.
Beitrag #6126807 wurde von einem Moderator gelöscht.
Beitrag #6126809 wurde von einem Moderator gelöscht.
Beitrag #6126811 wurde von einem Moderator gelöscht.
Beitrag #6126823 wurde von einem Moderator gelöscht.
Beitrag #6126825 wurde von einem Moderator gelöscht.
Beitrag #6126828 wurde von einem Moderator gelöscht.
Beitrag #6126835 wurde von einem Moderator gelöscht.

Antwort schreiben

Dieser Beitrag kann nur von angemeldeten Benutzern beantwortet werden.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren