Handout - Institut für Theoretische Informatik - Technische ...
Handout - Institut für Theoretische Informatik - Technische ... Handout - Institut für Theoretische Informatik - Technische ...
4. Church-Turing-These 4.1 RAM 4.1.0 Befehlssatz einer RAM Befehl Wirkung READ 〈R 0 〉 := 〈read〉, 〈BZ〉 := 〈BZ〉 + 1 der Lesekopf bewegt sich ein Feld nach rechts WRITE der Schreibkopf schreibt 〈R 0 〉 und bewegt sich ein Feld nach rechts, 〈BZ〉 := 〈BZ〉 + 1 LOAD i 〈R 0 〉 := 〈R i 〉 und 〈BZ〉 := 〈BZ〉 + 1 STORE i 〈R i 〉 := 〈R 0 〉 und 〈BZ〉 := 〈BZ〉 + 1 ADD i 〈R 0 〉 := 〈R i 〉 + 〈R 0 〉 und 〈BZ〉 := 〈BZ〉 + 1 PRED 〈R 0 〉 := pred〈R 0 〉 1 und 〈BZ〉 := 〈BZ〉 + 1 GOTO m 〈〈BZ〉 := { m m falls 〈R IF R i = 0 GOTO m 〈BZ〉 := i 〉 = 0 〈BZ〉 + 1 sonst { m falls 〈R IF R i > 0 GOTO m 〈BZ〉 := i 〉 > 0 〈BZ〉 + 1 sonst STOP Maschine hält Weiter kann man für LOAD , STORE und ADD das Argument i statt als Zählindex für Register R i auch zur indirekte Adressierung des Registers R 〈Ri 〉 oder als Konstante i ∈ N verwenden. Dies wird durch einen Asterisk ∗ bzw. ein Ausrufezeichen ! vor dem i angezeigt. 1 mit pred(n + 1) = n und pred0 = 0 Jürgen Koslowski (TU-BS) Theoretische Informatik 2 SS 2012 50 / 215
4. Church-Turing-These 4.1 RAM Beim Programmieren elementarer Aktionen als “Macros” ist zu beachten, daß Sprung-Adressen ggf. anzupassen und der Akkumulator zu retten sind. Beispiel SUCC i / PRD i soll den Inhalt von R i STORE α 〈R α 〉 = 〈R 0 〉 LOAD !1 〈R o 〉 = 1 ADD i 〈R 0 〉 := 〈R i 〉 + 1 STORE i 〈R i 〉 := 〈R i 〉 + 1 LOAD α 〈R 0 〉 = 〈R α 〉 um 1 erhöhen/vermindern: STORE α 〈R α 〉 = 〈R 0 〉 LOAD i 〈R 0 〉 = 〈R i 〉 PRED 〈R 0 〉 := pred〈R i 〉 STORE i 〈R i 〉 := pred〈R i 〉 LOAD α 〈R 0 〉 = 〈R α 〉 Dabei ist R α ein zum Zeitpunkt des Aufrufs freies Register, das manuell anzupassen ist. Jürgen Koslowski (TU-BS) Theoretische Informatik 2 SS 2012 51 / 215
- Seite 1 und 2: Theoretische Informatik 2 Jürgen K
- Seite 3 und 4: Übersicht: Turingmaschinen I 2 3.
- Seite 5 und 6: Übersicht: Unentscheidbare Problem
- Seite 7 und 8: Hintergrund und Motivation Ziele de
- Seite 9 und 10: 3. Turingmaschinen Kapitel 3 Turing
- Seite 11 und 12: 3. Turingmaschinen 3.0 Vorüberlegu
- Seite 13 und 14: 3. Turingmaschinen 3.0 Vorüberlegu
- Seite 15 und 16: 3. Turingmaschinen 3.0 Vorüberlegu
- Seite 17 und 18: 3. Turingmaschinen 3.0 Vorüberlegu
- Seite 19 und 20: 3. Turingmaschinen 3.0 Vorüberlegu
- Seite 21 und 22: 3. Turingmaschinen 3.0 Vorüberlegu
- Seite 23 und 24: 3. Turingmaschinen 3.0 Vorüberlegu
- Seite 25 und 26: 3. Turingmaschinen 3.0 Vorüberlegu
- Seite 27 und 28: 3. Turingmaschinen 3.0 Vorüberlegu
- Seite 29 und 30: 3. Turingmaschinen 3.1 Entscheidbar
- Seite 31 und 32: 3. Turingmaschinen 3.1 Entscheidbar
- Seite 33 und 34: 3. Turingmaschinen 3.2 Die Chomsky-
- Seite 35 und 36: 3. Turingmaschinen 3.2 Die Chomsky-
- Seite 37 und 38: 3. Turingmaschinen 3.3 Abschlußeig
- Seite 39 und 40: 3. Turingmaschinen 3.4 Turing-berec
- Seite 41 und 42: 3. Turingmaschinen 3.4 Turing-berec
- Seite 43 und 44: 3. Turingmaschinen 3.4 Turing-berec
- Seite 45 und 46: 3. Turingmaschinen 3.4 Turing-berec
- Seite 47 und 48: 4. Church-Turing-These Kapitel 4 Di
- Seite 49: RAM 4. Church-Turing-These 4.1 RAM
- Seite 53 und 54: 4. Church-Turing-These 4.1 RAM 4.1.
- Seite 55 und 56: 4. Church-Turing-These 4.1 RAM 4.1.
- Seite 57 und 58: 4. Church-Turing-These 4.1 RAM Bewe
- Seite 59 und 60: 4. Church-Turing-These 4.2 Rekursiv
- Seite 61 und 62: 4. Church-Turing-These 4.2 Rekursiv
- Seite 63 und 64: 4. Church-Turing-These 4.2 Rekursiv
- Seite 65 und 66: 4. Church-Turing-These 4.2 Rekursiv
- Seite 67 und 68: 4. Church-Turing-These 4.2 Rekursiv
- Seite 69 und 70: 4. Church-Turing-These 4.2 Rekursiv
- Seite 71 und 72: 4. Church-Turing-These 4.2 Rekursiv
- Seite 73 und 74: 4. Church-Turing-These 4.2 Rekursiv
- Seite 75 und 76: 4. Church-Turing-These 4.2 Rekursiv
- Seite 77 und 78: 5. Unentscheidbare Probleme Kapitel
- Seite 79 und 80: 5. Unentscheidbare Probleme 5.1 Uni
- Seite 81 und 82: 5. Unentscheidbare Probleme 5.1 Uni
- Seite 83 und 84: 5. Unentscheidbare Probleme 5.1 Uni
- Seite 85 und 86: 5. Unentscheidbare Probleme 5.2 Das
- Seite 87 und 88: 5. Unentscheidbare Probleme 5.2 Das
- Seite 89 und 90: 5. Unentscheidbare Probleme 5.3 Wei
- Seite 91 und 92: 5. Unentscheidbare Probleme 5.3 Wei
- Seite 93 und 94: 5. Unentscheidbare Probleme 5.3 Wei
- Seite 95 und 96: 5. Unentscheidbare Probleme 5.3 Wei
- Seite 97 und 98: 5. Unentscheidbare Probleme 5.4 Sat
- Seite 99 und 100: 5. Unentscheidbare Probleme 5.4 Sat
4. Church-Turing-These 4.1 RAM<br />
4.1.0 Befehlssatz einer RAM<br />
Befehl<br />
Wirkung<br />
READ 〈R 0 〉 := 〈read〉, 〈BZ〉 := 〈BZ〉 + 1<br />
der Lesekopf bewegt sich ein Feld nach rechts<br />
WRITE der Schreibkopf schreibt 〈R 0 〉 und bewegt sich ein Feld nach rechts, 〈BZ〉 := 〈BZ〉 + 1<br />
LOAD i 〈R 0 〉 := 〈R i 〉 und 〈BZ〉 := 〈BZ〉 + 1<br />
STORE i 〈R i 〉 := 〈R 0 〉 und 〈BZ〉 := 〈BZ〉 + 1<br />
ADD i 〈R 0 〉 := 〈R i 〉 + 〈R 0 〉 und 〈BZ〉 := 〈BZ〉 + 1<br />
PRED 〈R 0 〉 := pred〈R 0 〉 1 und 〈BZ〉 := 〈BZ〉 + 1<br />
GOTO m<br />
〈〈BZ〉 :=<br />
{<br />
m<br />
m falls 〈R<br />
IF R i = 0 GOTO m 〈BZ〉 :=<br />
i 〉 = 0<br />
〈BZ〉 + 1 sonst<br />
{<br />
m falls 〈R<br />
IF R i > 0 GOTO m 〈BZ〉 :=<br />
i 〉 > 0<br />
〈BZ〉 + 1 sonst<br />
STOP<br />
Maschine hält<br />
Weiter kann man <strong>für</strong> LOAD , STORE und ADD das Argument i statt als<br />
Zählindex <strong>für</strong> Register R i auch zur indirekte Adressierung des Registers<br />
R 〈Ri 〉 oder als Konstante i ∈ N verwenden. Dies wird durch einen Asterisk<br />
∗ bzw. ein Ausrufezeichen ! vor dem i angezeigt.<br />
1 mit pred(n + 1) = n und pred0 = 0<br />
Jürgen Koslowski (TU-BS) <strong>Theoretische</strong> <strong>Informatik</strong> 2 SS 2012 50 / 215