Hi, nachdem ich einiges über SCL gelernt habe, kommen folgende Fragen auf.
1. Was passiert mit allen Variablen, die nicht sofort einer Adresse zugewiesen werden, sondern einfach nur als bspw. BOOL oder WORD oder INT deklariert werden?
1.1 Ich frage mich hierbei, wo die Variablen abgespeichert werden, wenn ihnen keine Adresse zugewiesen wird?
1.2 Wird nicht-adressierten Variablen dann eine zufällige Adresse zugewiesen? Kann dadurch aus Versehen eine benutzte Adresse überschrieben werden?
2. Angenommen ich deklariere in einem FB:
...
VAR
bTest : BOOL;
END_VAR
...
Soweit ich es verstanden habe behält diese Variable ihren Zustand oder Wert durch den Instanz-DB. Wo finden Merker dann noch ihren sinnvollen Platz, wenn der DB die Aufgabe übernimmt?
3. Ähnlich zur ersten Frage. IN/OUT-Variablen erhalten ebenfalls keine feste Adresse bei der Deklaration. Es wäre nicht einmal möglich diesen eine Adresse zuzuweisen, da sie ja als IN und OUT Variable zugleich dienen. Dennoch müssen auch IN/OUT-Variablen irgendwo Speicher belegen, wo passiert das?
4. Falls, bezüglich des nicht-adressierten Speichers, die Lösung lautet, dass es einen speziellen Speicher gibt, der diese nicht-adressierten Variablen versorgt,
4.1 welcher Speicher wäre das?
4.2 Wie weiß ich, ob ich diesen Speicher (wenn es ihn gibt) durch nicht-adressierten Variablen überfülle?
1. Was passiert mit allen Variablen, die nicht sofort einer Adresse zugewiesen werden, sondern einfach nur als bspw. BOOL oder WORD oder INT deklariert werden?
1.1 Ich frage mich hierbei, wo die Variablen abgespeichert werden, wenn ihnen keine Adresse zugewiesen wird?
1.2 Wird nicht-adressierten Variablen dann eine zufällige Adresse zugewiesen? Kann dadurch aus Versehen eine benutzte Adresse überschrieben werden?
2. Angenommen ich deklariere in einem FB:
...
VAR
bTest : BOOL;
END_VAR
...
Soweit ich es verstanden habe behält diese Variable ihren Zustand oder Wert durch den Instanz-DB. Wo finden Merker dann noch ihren sinnvollen Platz, wenn der DB die Aufgabe übernimmt?
3. Ähnlich zur ersten Frage. IN/OUT-Variablen erhalten ebenfalls keine feste Adresse bei der Deklaration. Es wäre nicht einmal möglich diesen eine Adresse zuzuweisen, da sie ja als IN und OUT Variable zugleich dienen. Dennoch müssen auch IN/OUT-Variablen irgendwo Speicher belegen, wo passiert das?
4. Falls, bezüglich des nicht-adressierten Speichers, die Lösung lautet, dass es einen speziellen Speicher gibt, der diese nicht-adressierten Variablen versorgt,
4.1 welcher Speicher wäre das?
4.2 Wie weiß ich, ob ich diesen Speicher (wenn es ihn gibt) durch nicht-adressierten Variablen überfülle?