2. Imperative Programmierung und Berechenbarkeit ...
2. Imperative Programmierung und Berechenbarkeit ... 2. Imperative Programmierung und Berechenbarkeit ...
Maschinenmodell Registermaschine - Register x1,…xn -- endlich viele Speicherregister - Ein Befehlsregister b Operationen werden durch die "Programmiersprache" festgelegt. Befehlssatz einer LOOP-RM: xi = xj + c xi = xj – c LOOP xi {} Konstanten c : natürliche Zahlen Semantik: - Addition wie üblich - Subtraktion: xi erhält den Wert xj – c, wenn xj – c ≥ 0 sonst 0 hs / fub - alp2-2 2
Beispiel: einfache Programme Multiplikation: x i = x j *x k LOOP x i {x i = x i -1} LOOP x j {x i = x i +x k } Und wie definiert man x i = x j + x k ?? Welche Funktionen lassen sich mit LOOP-Programmen berechnen? hs / fub - alp2-2 3
- Seite 1: 2. Imperative Programmierung und Be
- Seite 5 und 6: Primitiv rekursive Grundfunktionen
- Seite 7 und 8: III Rekursionsschema g : N k -> N,
- Seite 9 und 10: Loop-Algorithmus: beschränkter μ-
- Seite 11 und 12: While-Programme Unbeschränkter μ-
- Seite 13 und 14: GOTO-Registermaschine Befehle haben
- Seite 15: A i ' ≡ {x i =x j +/- c; count=co
Maschinenmodell<br />
Registermaschine<br />
- Register x1,…xn -- endlich viele Speicherregister<br />
- Ein Befehlsregister b<br />
Operationen werden durch die "Programmiersprache"<br />
festgelegt.<br />
Befehlssatz einer LOOP-RM:<br />
xi = xj + c<br />
xi = xj – c<br />
LOOP xi {}<br />
Konstanten c : natürliche Zahlen<br />
Semantik:<br />
- Addition wie üblich<br />
- Subtraktion:<br />
xi erhält den Wert<br />
xj – c, wenn xj – c ≥ 0<br />
sonst 0<br />
hs / fub - alp2-2 2