Top Qs
Tijdlijn
Chat
Perspectief

Spronginstructie

Van Wikipedia, de vrije encyclopedie

Remove ads

Een spronginstructie is een instructie in een programmeertaal die de uitvoering van een computerprogramma op een ander punt voortzet. In veel programmeertalen wordt een dergelijke opdracht GOTO genoemd, van het Engelse go to ("ga naar"). In COBOL en PL/1 als twee woorden: GO TO. In assembleertalen wordt vaak B (van branch), J of JMP (van jump) gebruikt. In BASIC mag GOTO na THEN worden weggelaten.

Remove ads

Spronginstructies in procedurele programmeertalen

Samenvatten
Perspectief

In de procedurele (3e generatie) programmeertalen die met name in de jaren 70 en 80 werden ingezet, gaf het statement GOTO de programmeur de mogelijkheid de besturing op een andere plek in het programma voort te zetten.

Een voorbeeld in BASIC, een van de oudere programmeertalen:

10 PRINT "Hoeveel is 7 - 7?"
20 INPUT A
30 IF A = 0 THEN GOTO 60  ' of: IF A = 0 THEN 60
40 PRINT "Fout, probeer opnieuw!"
50 GOTO 20
60 PRINT "Correct!"
70 END

In het bovenstaande voorbeeld wordt naar een regelnummer gesprongen, maar in de meeste talen kan daarvoor een label worden gebruikt. Een label bestaat meestal uit een naam, gevolg door een dubbele punt.

In de jaren 70 kwam men tot het inzicht dat de spronginstructie een slechte invloed had op de leesbaarheid van het programma, waardoor het programma lastig te onderhouden was (zie Spaghetticode). Bovendien bleek dat de instructie overbodig was: elk probleem kon ook worden opgelost zonder GOTO te gebruiken. In plaats daarvan gebruikte men de iteratie met statements als FOR, DO en WHILE. De oplossingen werden steeds meer gevonden in het gestructureerd programmeren. Iteraties en keuzestructuren met bijbehorende statements verdreven GOTO uit de gestructureerde programma's. In programmeercursussen werd GOTO niet onderwezen (hoewel de gebruikte taal het statement nog wel kende) en in de meeste nieuwe programmeertalen is het statement GOTO zelfs niet meer beschikbaar.

Bekende tegenstander van het GOTO-statement en voorvechter van het gestructureerd programmeren was de Nederlandse informaticus Edsger Dijkstra.[1]

In assembleertalen wordt de spronginstructie nog steeds gebruikt, maar deze talen worden vrijwel alleen nog gebruikt voor kleine programmaatjes op een laag niveau van het besturingssysteem.

Remove ads

Spronginstructies in assembler of machinetaal

Loading related searches...

Wikiwand - on

Seamless Wikipedia browsing. On steroids.

Remove ads