das war wohl nix ...
Hallo,
warum einfach wenns auch kompliziert geht?

Was meinst du zu diesem Beispiel?
Wie Ralle schon schrieb, sieht diese Variante wesentlich sauberer aus ...
Doch was nützt das, wenn der Baustein nicht genau das tut, was er soll ?!
Nur weil ein Baustein genau einen Test mit genau einem Testdatum besteht,
heißt das nicht, daß der Baustein richtig funktioniert oder gar fehlerfrei ist.
Wer will, daß
L P##Byte0 oder
L P##OutDW die Adresse der Übergabeparameter ergibt, der muß schon einen
FB nehmen.
Bei FC erhält man die Adresse des beim Aufruf angegebenen Aktualparameters, so daß es z.B. völlig egal ist, was für
Aktualparameter bei Byte1, Byte2 und Byte3 angegeben sind. Es wird immer mit der Adresse des bei Byte0 angegebenen
Aktualparameters und dessen nächste 3 Byte-Adressen gearbeitet!
Es ist einfach nur eine reichlich umständlich formulierte Übertragung eines Doppelwords auf ein anderes Doppelword.
Um den Baustein endgültig auf den Müll zu werfen: ruf mal den Baustein mit Aktualparametern aus einem DB auf, z.B.
Byte0:=DB1.DBB4 ... Byte3:=DB4.DBB4
Mach den/die DB aber vorsichtshalber größer als notig, sonst geht die CPU in STOP.
Tut mir ja Leid für den Verriß, doch der Baustein ist wirklich unausgegorener Müll.
[EDIT]Zusatz: mit Konstanten als Aktualparameter für die Eingangsparameter funktioniert der Baustein auch nicht.
Harald