-> Hier kostenlos registrieren
Hallo Zusammen,
ich habe im Forum nach einer Art Anleitung gesucht, um eine Mittelwertberechnung durchzuführen. Dabei bin ich auf Folgendes (von vierlagig!) gestoßen:
So, nun sind beim Durcharbeiten leider schon die ersten Fragen aufgetaucht – es wäre super, wenn ihr mir etwas helfen könntet, damit ich den Aufbau richtig verstehe…
1) Im AR1 steht ja zu Beginn: P#8.0
Es soll doch als erste Adresse die Anfangsadresse im Array „beschrieben“ werden – und diese erste Adresse ist doch 1 und nicht 8, oder?
2) L DID[AR1, P#4.0] ruft ja die Startadresse + 1 Doppelwort auf.
Warum ist es nötig, zusätzlich zur Startadresse noch ein Doppelwort zu laden?
Zu Beginn (also beim ersten Durchlauf der Schleife) muss doch der Zeiger auf die „Ursprungsadresse“ (in diesem Fall auf Adresse 8 im Array) zeigen…
3) „#rInput“ soll ja den aktuell anstehenden Wert, z.B. einen Messwert darstellen.
Was aber ist beim Aufruf des Bausteins für „#aRealArray[7]“ zu übergeben?
So, das wären zunächst einmal die ersten Fragen zu diesem Thema… wenn ich das verstanden habe, dann „forsche“ ich weiter…
Vielen Dank schon mal bis hierhin für eure Hilfe!
Grüße
pinolino
ich habe im Forum nach einer Art Anleitung gesucht, um eine Mittelwertberechnung durchzuführen. Dabei bin ich auf Folgendes (von vierlagig!) gestoßen:
Code:
[LEFT]L 8 //Startadresse des Arrays
SLD 3 //Pointererzeugen
LAR1 //und ins Adressregister laden
L 7 //Anzahl der Schiebevorgänge laden
nex1: T #iLoopCounter
L DID [AR1,P#4.0] //Startadresse + 1 DW
T DID [AR1,P#0.0] //in Startadresse schreiben
+AR1 P#4.0 //und das AR1 um 4.0 erhöhen = neue Startadresse
L #iLoopCounter //Schleifenzähler laden
LOOP nex1 //um ihn zu dekrementieren und zurückzuspringen[/LEFT]
[LEFT]L #rInput //und den aktuellen Wert
T #aRealArray[7] //ins Real-ARRAY schubsen[/LEFT]
So, nun sind beim Durcharbeiten leider schon die ersten Fragen aufgetaucht – es wäre super, wenn ihr mir etwas helfen könntet, damit ich den Aufbau richtig verstehe…
1) Im AR1 steht ja zu Beginn: P#8.0
Es soll doch als erste Adresse die Anfangsadresse im Array „beschrieben“ werden – und diese erste Adresse ist doch 1 und nicht 8, oder?
2) L DID[AR1, P#4.0] ruft ja die Startadresse + 1 Doppelwort auf.
Warum ist es nötig, zusätzlich zur Startadresse noch ein Doppelwort zu laden?
Zu Beginn (also beim ersten Durchlauf der Schleife) muss doch der Zeiger auf die „Ursprungsadresse“ (in diesem Fall auf Adresse 8 im Array) zeigen…
3) „#rInput“ soll ja den aktuell anstehenden Wert, z.B. einen Messwert darstellen.
Was aber ist beim Aufruf des Bausteins für „#aRealArray[7]“ zu übergeben?
So, das wären zunächst einmal die ersten Fragen zu diesem Thema… wenn ich das verstanden habe, dann „forsche“ ich weiter…
Vielen Dank schon mal bis hierhin für eure Hilfe!
Grüße
pinolino