IIm18-Kreativaufgabe7
Aus ProgrammingWiki
Archivierte Version vom 2019-06-16T13:02:46+00:00. Aktuelle Version
Random Access Maschine
Geben Sie mind. ein RAM-Programm zur Berechnung der Funktion w : \N \mapsto \N mit w(n) = \left\lfloor \sqrt{n} \right\rfloor an.
RAM-Programm: Paul Bachmann, Johannes Thies
| Befehlszähler | Anweisung | Bemerkung |
|---|---|---|
| | 0 | xxx | xxx |
| | 1 | xxx | xxx |
| | 2 | xxx | xxx |
RAM Programm zur ermittlung des größten gemeinsamen Teilers (ggt) - Euklidischer Algorithmus
| Befehlszähler | Anweisung | Bemerkung |
|---|---|---|
| | 0 | R0 = a | belegen von R0 mit der ersten natürlichen Zahl a |
| | 1 | R1 = b | belegen von R1 mit der ersten natürlichen Zahl b |
| | 2 | IFZERO R1 GOTO 12 | Sprung zu 12 da R0 das Ergebnis beinhaltet |
| | 3 | IFZERO R0 GOTO 11 | Sprung zu 11 da R1 das Ergebnis beinhaltet |
| | 4 | R2 = R0 | Zwischenspeichern von R0 in R2 für Größer vergleich |
| | 5 | R2 -= R1 | R1 von R2 subtrahieren für Größer vergleich |
| | 6 | IFZERO R2 GOTO 9 | wenn R2 0 ist, ist R1 > R0 |
| | 7 | R0 -= R1 | R1 von R0 subtrahieren |
| | 8 | GOTO 2 | Sprung zum Schleifenanfang |
| | 9 | R1 -= R0 | R0 von R1 subtrahieren |
| | 10 | GOTO 2 | Sprung zum Schleifenanfang |
| | 11 | R0 = R1 | Ergebnis in R0 schreiben |
| | 12 | STOP |