Step 7 Überschneiden sich Lokalvariablen wie L 0.0 und Temp-Variablen im L-Stack ?

Machtnix

Level-2
Beiträge
77
Reaktionspunkte
0
Zuviel Werbung?
-> Hier kostenlos registrieren
In einem FC oder FB kann man für kurzzeitige Verwendung undeklarierte Lokalmerker wie L 0.0 einsetzen oder deklarierte Tempvariablen. Weiß jemand, wie sie sich untereinander verhalten, also wenn man beide verwenden würde ? Ich halte das weder für sinnvoll noch für notwendig, würde es aber doch gerne mal wissen.

Sie sind ja wohl beide auf dem L-Stack angelegt. Aber greife ich jetzt mit L 0.0 immer auf einen freien Bereich zu oder überschreibe ich damit die deklarierten Tempvariablen ?
 
Stimmt das ist der gleiche Bereich
Zu beachten ist auch, dass diesen Bereich alle Bausteine benutzen.

Wenn Du im L Bereich eine Variable liesst ohne sie vorher beschrieben zu haben, steht noch der Wert von dem Baustein drin, der sie zuvor benutzt hat
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Wenn du Temp Variablen deklarierst wird auch ein entsprechender Offset, beginnend bei "0", angezeigt.
Innerhalb des Bausteins ist dann alles so wie von jeden x-beliebigen S7 Speicherbereich bekannt.

L0.0 = LB0 = LW0 = LD0 = mindestens die erste Zeile der Temp-Variablen (je nach Zugriffsbreite)

Mfg
Manuel
 
Wenn Du im L Bereich eine Variable liesst ohne sie vorher beschrieben zu haben, steht noch der Wert von dem Baustein drin, der sie zuvor benutzt hat

Das ist klar, wozu auch. Wo und wie man temporäre Variablen einsetzt, ist mir nicht neu. Meine Frage war, ob die beiden Arten temporärer Variablen völlig unabhängig voneinander eingesetzt werden können.
 
Ich arbeite mit Quelltexten, da wird nichts angezeigt.

Aber mir ist jetzt klar, sie überschneiden sich und damit meine Frage beantwortet. Vielen Dank !
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Aber mir ist jetzt klar, sie überschneiden sich und damit meine Frage beantwortet.

Ja ... und so hätte auch die erste Antwort auf deine Frage schon gelautet haben müssen.
Du solltest hier auch die Gefahr berücksichtigen, die bei so etwas entsteht. Am Besten also gar nicht erst mit absoluten L-Zugriffen arbeiten sondern auch diese Variablen immer symbolisch durch-addressieren. Dann weiß man auch immer, was verwendet wird und was nicht ... Brauche ich eine neue Variable so lege ich die dann namentlich an und muß nicht erst gucken, welche Adresszugriffe vielleicht schon benutzt worden sind.

Gruß
Larry
 
Seh ich auch so. Wenn symbolisch, dann durchgehend. Deshalb "Ich halte das weder für sinnvoll noch für notwendig, würde es aber doch gerne mal wissen."
 
Zurück
Oben