Ciao a tutti.

Sto leggendo alcuni vecchi programmi in BASIC che mi piacerebbe riscrivere in C++ ma non ci capisco una mazza.

La struttura del programma è la seguente:
codice:
          // Dichiarazione e inizializzazione variabili
GOSUB 100
END
100     IF (...) GOTO 200
          // Istruzioni
          GOTO 300
200     // Istruzione
         GOSUB 100
         // Istruzioni
         GOSUB 100
         // Istruzioni
         GOSUB 100
         // Istruzioni
         GOSUB 100
// Istruzione
300    RETURN
A cosa servono l'istruzione GOSUB e RETURN, esattamente?!

Proprio non riesco a capire il flusso del programma...