Schleifen |
Jetzt wollen wir die Zahlen von 1 bis 100 ausgeben. Das könnte man so machen:
push_i 1, L0;
print_s "1";
print_n L0;
print_s "2";
print_n L0;
print_s "3";
print_n L0;
...
Wir würden viel Zeit brauchen, um das zu schreiben. Wir benötigen etwas um den Teil zu wiederholen, eine "Schleife" Hier ist das Beispiel:
loop.na
1| push_i 1, L0;
2| push_i 0, L1;
3| push_i 99, L2;
4|
5| lab loop;
6| inc_l L1;
7|
8| print_l L1;
9| print_n L0;
10|
11| lseq_l L1, L2, L3;
12| jmp_l L3, loop;
13|
14| push_i 0, L4;
15| exit L4;
Zeile 5 wird "loop" genannt. Zeile 6 erhöht "L1" um eins. Zeile 8 und 9 machen die Ausgabe. Zeile 11 und 12: der "lseq_l" Befehl vergleicht "L1" mit "L2". Wenn "L1" weniger oder gleich "L2" ist, dann wird "L3" zu wahr (1) gesetzt. Wenn nicht, dann wird "L3" auf falsch (0) gesetzt. Der "jmp_l" Befehl springt zur Sprungmarke "loop", wenn "L3" wahr ist. Das Programm bleibt in der Schleife, bis das Zählregister "L1" 100 erreicht. Prev: Konsole Ausgabe | Next: Sprünge |