• Keine Ergebnisse gefunden

11/11/051

N/A
N/A
Protected

Academic year: 2021

Aktie "11/11/051"

Copied!
2
0
0

Wird geladen.... (Jetzt Volltext ansehen)

Volltext

(1)

11/11/05

1

G. Zachmann Informatik 1 - WS 05/06 Aufbau und Funktionsweise eines Computers 47

Abstrakte Maschinenmodelle : Turingmaschine (TM)

1936 von Alan Turing zum theoretischen Studium der Berechenbarkeit eingeführt

Besteht aus

einem festen Teil ( "Hardware“)

einem variablen Teil ( "Software“)

TM meint nicht eine Maschine, die genau eine Sache tut, sondern ein allgemeines Konzept, welches eine ganze Menge von verschiedenen Maschinen definiert

Alle TM sind aber nach einem Schema aufgebaut und funktionieren nach den selben Regeln

G. Zachmann Informatik 1 - WS 05/06 Aufbau und Funktionsweise eines Computers 48

Einseitiges, unendlich großes Band aus einzelnen Feldern, Schreib-/Lesekopf und Steuerung.

Jedes Feld des Bandes trägt ein Zeichen aus einem frei wählbaren (aber für eine Maschine festen) Bandalphabet (Menge von Zeichen).

Der Schreib-/Lesekopf ist auf ein Feld

positioniert, welches dann gelesen oder geschrieben werden kann.

"Hardware"

a1 a2 a3 a4 an

Steuerung (Programm) Band bestehend aus Feldern Schreib-/

Lesekopf

G. Zachmann Informatik 1 - WS 05/06 Aufbau und Funktionsweise eines Computers 49

"Software"

folgende Operationen auf der Hardware möglich:

Überschreibe Feld unter dem Schreib-/Lesekopf mit einem Zeichen und gehe ein Feld nach rechts.

Überschreibe Feld unter dem Schreib-/Lesekopf mit einem Zeichen und gehe ein Feld nach links.

besteht aus endlich vielen Zuständen und einer Tabelle, die beschreibt wie man von einem Zustand in einen anderen gelangen kann.

Tabelle ist variabler Teil der Maschine, die "Software"

G. Zachmann Informatik 1 - WS 05/06 Aufbau und Funktionsweise eines Computers 50

Beispiel

Aktueller Zustand q, Maschine liest x.

Paar (q,x) bestimmt Zeile in der Tabelle, in der man Operation b und Folgezustand q' findet.

Operation b wird ausgeführt und die Maschine in den Zustand q' versetzt.

Die Tabelle heißt auch Programm

1 1 rechts 1

2

2 0 links

0 1

Folgezustand Operation

Eingabe Zustand

G. Zachmann Informatik 1 - WS 05/06 Aufbau und Funktionsweise eines Computers 51

1 2 Folgezustand

Endzustand 2

Anfangszustand 0, rechts

0, rechts 1

0 1

Bemerkung Operation

Eingabe Zustand

1 1 1 0

n >= 1 Einsen

Start/Stop

Ein ausgezeichneter Endzustand

Maschine beginnt im Anfangszustand (oBdA Nr. 1)

Landet die Maschine im Endzustand, so wird gestoppt.

Löschen einer Einserkette; Bandalphabet {0,1}

G. Zachmann Informatik 1 - WS 05/06 Aufbau und Funktionsweise eines Computers 52

Beispiel 2: Programm mit vier Zuständen

Was macht das Programm? (Anwenden auf 1 0 0 ...) 2 3 1, rechts 1, links . 1

0 2

3 2 1, links . 0, rechts 1

0 3

2 4 Folgezustand

Ende 4

Start 0, rechts

0, rechts 1

0 1

Bemerkung Operation

Eingabe Zustand

(2)

11/11/05

2

G. Zachmann Informatik 1 - WS 05/06 Aufbau und Funktionsweise eines Computers 53

Übergangsgraph zu Beispiel 2

1*

3 4

2

0|0, rechts

1|0, rechts

1|1, rechts

0|0, links 0|1, links

1|1, links Zustand

Eingabe vom Band

Ausgabe Kopf-

bewegung

G. Zachmann Informatik 1 - WS 05/06 Aufbau und Funktionsweise eines Computers 54

1 1 1 0

X 1 1 Y 0

1 1 x 1 1 Y 1 1 0

schon kopiert wird kopiert

noch

kopieren zweite Kette Eingabe

Markiere erste und zweite Kette

Kopiere

Bsp. 3: Verdoppeln einer Einserkette

Eingabe: n Einsen, danach Nullen

Ausgabe: 2n Einsen, danach Nullen

Idee:

G. Zachmann Informatik 1 - WS 05/06 Aufbau und Funktionsweise eines Computers 55

Übergangsgraph

1*

2

7 4

8 3

6 5

1|X, rechts

1|1, rechts

X|1, rechts Y|1, rechts

1|X, rechts

Y|Y, rechts 1|1, rechts 1|1, rechts

1|1, links 1|1, links

0|1, links Y|Y, links

0|Y, links

G. Zachmann Informatik 1 - WS 05/06 Aufbau und Funktionsweise eines Computers 56

Mächtgkeit von abstrakten Maschinenmodellen

Was kann man mit einer Turingmaschine alles berechnen?

Auf einem PC (mit unendlich viel Speicher) kann man eine Turingmaschine simulieren

Alles was man mit einer Turingmaschine berechnen kann, kann man auch mit einem PC berechnen

Zu einem PC mit gegebenem Programm kann man eine TM angeben, die die Berechnung des PCs nachvollzieht!

PC und TM können dieselbe Klasse von Problemen lösen!

Beweis in Informatik III, Theorie der Berechenbarkeit -Was ist eine berechenbare Funktion bzw. Ein algorithmisch lösbares Problem?

-Gibt es nicht-berechenbare Funktionen?

-Gibt es Problemstellungen, die wohldefiniert, aber nicht algorithmisch lösbar sind?

G. Zachmann Informatik 1 - WS 05/06 Aufbau und Funktionsweise eines Computers 57

Church'sche These

Alonso Church (1903-1995, 1936):

“Alles, was man für intuitiv berechenbar hält, kann man mit einer TM ausrechnen.” Dabei heißt "intuitiv berechenbar", daß man einen Algorithmus angeben kann.

Was bringt uns das?

Mit der TM hat man das Prinzip von Berechnungsvorgängen vollständig verstanden. Man braucht keine zusätzlichen Operationen oder Eigenschaften um alle vorstellbaren Berechnungen durchführen zu können.

Daß reale Computer und ihre Programmiersprachen dennoch viel komplizierter sind hat nur mit praktischen Aspekten wie Geschwindigkeit oder Arbeitseffizienz zu tun.

Referenzen

ÄHNLICHE DOKUMENTE

a) gegenüber einem nachrangigen geschiedenen Ehegatten b) gegenüber nicht privilegierten volljährigen Kindern c) gegenüber Eltern des Unterhaltspflichtigen.. 2.

Abschläge für Stickstoffnachlieferung aus der Stickstoffbindung von Leguminosen bei Grünland und mehrschnittigem Feldfutter. Quelle: Anlage 4 Tabelle 12

Für Gemüsekulturen sowie Dill, Petersilie und Schnittlauch mit einer Folgekultur der Tabelle 11 im gleichen Jahr gelten die Werte nach Tabelle

Die Codes 128-255 wer- den je nach Zeichensatz unterschiedlich belegt (mit Sonderzeichen wie z.B. Umlauten) und sind hier nicht dargestellt. Birnthaler,

” Absdik“) ¨ von IBM f ¨ur HOST-Rechner definiert eine Standardbelegung der Codes 0-255 mit Zeichen (keine landesspezifischen Sonderzeichen wie z.B. Birnthaler,

Rum und drei mittelgroße geschälte und zerteilte Äpfel; fülle den Teig in Muffinförmchen; backe bei 175-200 Grad für etwa 30 min; bestäube die Muffins mit etwas

Rum und drei mittelgroße geschälte und zerteilte Äpfel; fülle den Teig in Muffinförmchen; backe bei 175-200 Grad für etwa 30 min; bestäube die Muffins mit etwas

• Hat eine SZK keine eingehenden Kanten, erhält man ihren Wert, indem man die kleinste obere Schranke aller Werte in der SZK berechnet :-). • Gibt es eingehende Kanten, muss