Wie mache ich den rekursiven Aufruf in IJVM

berserkerdq2

Bekanntes Mitglied
Hi, mir gehts nicht um die jetzt kommende Methode, sondern um die Theorie dahinter:

1650909855660.png
Wenn ich z. B. das habe

und mir gehts eigentlich nur um die 5 Zeile (Also die zeile nach else if (a<b)

also ich will das übersetzen:

Java:
if(a < b){
    return ggt(b-a,a)
}

Wenn ich das in IJVM übersetzen würde, dann würde ich ja es so machen, als Pseudocode:

WENN a<b Label
...


Label:
INVOKERITUAL ggt (wir gehen davon aus, dass die Werte im Stack schon passen, also das b-a und a da schon sind)
IRETURN

Meine Frage nun:

Ist das so korrekt? WEIL: Endet dann auch, wie in Java ich mir das vorstellen kann, hier IJVM? Wegen dem IRETURN? Und somit wird auch nicht mehr das ausgeführt, was unter wenn a<b steht oder?
 

Zurück
Oben