Indirekte Adressierung

Kuddel30

Level-2
Beiträge
54
Reaktionspunkte
5
Zuviel Werbung?
-> Hier kostenlos registrieren
Moin Moin.
Habe da Mal ne Allgemeine Frage zur Indirekten Adressierung.Was ist die Indirekte Adressierung und wann setzt man Sie ein? Bzw. Welche Vorteile hat die Indirekte Adressierung.
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Indirekte Adressierung bedeutet, daß die Adresse nicht im Programm steht, sondern aus einem Register oder einer Speicherstelle geholt wird.

direkte Adressierung:
Code:
L MW 100
indirekte Adressierung:
Code:
L MW [MD4]  // lädt das Merkerwort, dessen Adresse in MD4 steht
Code:
L 100
SLD 3
T MD4
L MW [MD4]  // lädt Merkerwort, von Adresse in MD4, hier MW100
Variante mit Adressregister:
Code:
 L     P#M 100.0
 LAR1  
 L     W [AR1,P#0.0]
mittels indirekter Adressierung kann die endgültige Adresse vom Programm selbst berechnet werden.
 
...Vorteile/Nachteile...

spart (richtig eingesetzt) ungemein viel Programmierarbeit. Hauptsächlich im Bereich der Datenerfassung, -verwaltung. z.B. Messwerte, Instanzwerte, Sollwerte etc. von größeren Anlagen können so, ohne tausende Lade- und Transferoperationen zu Programmieren, verarbeitet werden.

Nachteil:
Leider kann man da kaum noch irgendwelche Signale/Daten direkt verfolgen, da sich die Werte fast zyklisch ändern...
 
Was ist die Indirekte Adressierung

Das Gegenteil der absoluten Adressierung.
Absolut: vollständige Adressangabe
Indirekt: Addition eines Indexregisters(Offsets) zur Basisadresse

und wann setzt man Sie ein?
Meist dort wo mit vielen Werten hantiert wird z.B. oft zum Sortieren von Daten. Habe selbst mal einen Filter programmiert der mir aus 4000 Werten eines Datenbausteines ein bestimmtes Muster herausgesucht hat. Ohne
indirekte Adressierung wäre diese Aufgabe fast unmöglich gewesen.

Welche Vorteile hat die Indirekte Adressierung.
Durch Änderung des Offstes zur Laufzeit hervorragend geeignet zum Durchlaufen von Speicherbereichen (Datensätze), dabei weniger Code und weniger Speicherbedarf.
 
Zurück
Oben