Verschachtelte if-Bedingung

the

Level-1
Beiträge
20
Reaktionspunkte
0
Zuviel Werbung?
-> Hier kostenlos registrieren
hallo,

leider habe ich nicht die Möglichkeit meine geistigen Ergüsse zu testen, deswegen muss ich "dumm" fragen....

Ich möchte zwei IF-Bedingungen verschachteln.

In ST sieht das so aus:
Code:
if (x=1) then
   if (y=1) then B;
   else C; end_if;
elsif (x=2) then D;
else E; endif;
ich habe den Code stark vereinfacht dargestellt, das es mir nur um die Verschachtelung geht.

Sieht das in AWL so aus?:
Code:
AIF: (x=1)  // mir ist bewusst das diese Befehl kein AWL ist!
SPBN IF2

  AIF: (y=1)
  SPBN EIF
  B
  EIF: C

IF2: (x=2)
SPBN EIF
D
EIF: E

oder funktioniert das so nicht??.... Muss man evtl. die AIF/IF/EIF der verschachtelten Schleife durch eine zusätzliche Kennzeichnung ergänzen??

Ich hoffe der Code ist anschaulich genug.....

MfG
Thomas
 
hallo,

leider habe ich nicht die Möglichkeit meine geistigen Ergüsse zu testen, deswegen muss ich "dumm" fragen....

Ich möchte zwei IF-Bedingungen verschachteln.

In ST sieht das so aus:
Code:
if (x=1) then
   if (y=1) then B;
   else C; end_if;
elsif (x=2) then D;
else E; endif;
ich habe den Code stark vereinfacht dargestellt, das es mir nur um die Verschachtelung geht.

Sieht das in AWL so aus?:
Code:
AIF: (x=1)  // mir ist bewusst das diese Befehl kein AWL ist!
SPBN IF2

  AIF: (y=1)
  SPBN EIF
  B
  EIF: C

IF2: (x=2)
SPBN EIF
D
EIF: E
oder funktioniert das so nicht??.... Muss man evtl. die AIF/IF/EIF der verschachtelten Schleife durch eine zusätzliche Kennzeichnung ergänzen??

Ich hoffe der Code ist anschaulich genug.....

MfG
Thomas


hi, du solltest zwischendurch, wenn ne if-Anweisung abgearbeitet ist "rausspringen" ans Ende mit SPA. ist sozusagen dein END_IF. sonst wird zum Beispiel wenn "B" ausgeführt wird, anschließend auch "C" ausgeführt....
 
ist meine Frage so dämlich oder so einfach??
Ich bin da immer noch nicht wirklich weiter....
 
die sprungmarke muß auch immer anders heißen.

Code:
SPBN EIF   
  B
  [COLOR=red]EIF[/COLOR]: C 
 
IF2: (x=2)
SPBN EIF
D
[COLOR=red]EIF[/COLOR]: E
in awl

Code:
l 1
l #x
==I
spbn [COLOR=red]EIF[/COLOR]
= #B
spa [COLOR=red]ENDE[/COLOR]
[COLOR=red]EIF[/COLOR]: = #C
 
l 2
l #x
==I
spbn [COLOR=red]EIF1[/COLOR]
=#D
spa [COLOR=red]ENDE[/COLOR]
[COLOR=red]EIF1: =#E[/COLOR]
[COLOR=#ff0000]usw[/COLOR]
[COLOR=#ff0000]...[/COLOR]
[COLOR=#ff0000]ENDE: NOP 0[/COLOR]
 
Zurück
Oben