Was ist ein Computer? Was ist ein Programm? Können Computer Alles?

Ähnliche Dokumente
Ideen der Informatik. Was ist ein Computer? Was ist ein Programm? Können Computer Alles? Kurt Mehlhorn und Adrian Neumann

Ideen der Informatik. Wie funktionieren Computer? Kurt Mehlhorn

Moderne Rechner. Hardware and Software. Kurt Mehlhorn Kosta Panagioutou Max-Planck-Institut für Informatik

1 Vom Problem zum Programm

GTI. Hannes Diener. 6. Juni Juni. ENC B-0123, diener@math.uni-siegen.de

Mächtigkeit von WHILE-Programmen

Theoretische Grundlagen der Informatik

Zur Vereinfachung betrachten wir nun nur noch Funktionen f, die einen Funktionswert f nµberechnen. Sie werden alle in einer Tabelle dargestellt:

Brückenkurs / Computer

Infovorkurs, Teil III: Maschinenabstraktion & Ausblick

Grundlagen der Informatik II. Teil I: Formale Modelle der Informatik

Brückenkurs / Computer

Algorithmen und Programmierung

Einführung in die Theoretische Informatik

Einführung in die Informatik

Im Original veränderbare Word-Dateien

Informatik - Lehrgang 2000/2001 GRUNDLAGEN

Geschichte der Informatik

Kann ein Computer denken?

Einführung (0) Erster funktionsfähiger programmgesteuerter Rechenautomat Z3, fertiggestellt 1941 Bild: Nachbau im Deutschen Museum München

Teil VIII Von Neumann Rechner 1

Die Erfindung der ersten Computer und Vergleich der Intentionen der Erfinder

effektives Verfahren ~ Algorithmus (Al Chwarismi) Regelsystem, Methode, Rezept, Gebrauchsanleitung Programm (griech. προγραφω, vor-schreiben)

Was ist ein Computer?

Deterministische Turing-Maschinen (DTM) F3 03/04 p.46/395

Die Geschichte des Computers

C. BABBAGE ( ): Programmgesteuerter (mechanischer) Rechner

Das Rechnermodell von John von Neumann

Herzlichen Glückwunsch!... 9

3. Turingmaschinen FORMALISIERUNG VON ALGORITHMEN. Turingmaschinen Registermaschinen Rekursive Funktionen UNTERSCHEIDUNGSMERKMALE DER ANSÄTZE:

Die Mikroprogrammebene eines Rechners

2.2 Rechnerorganisation: Aufbau und Funktionsweise

Minimalismen in der. Informatik

Ausarbeitung Seminarvortrag High-Performance-Computing WS 2011/2012

Technische Informatik. Der VON NEUMANN Computer

1. Entwicklung der Datenverarbeitung

1 Syntax von Programmiersprachen

FHZ. K01 Geschichte des Computers. Lernziele. Hochschule Technik+Architektur Luzern. Inhalt

Technische Informatik I

L3. Datenmanipulation

Informatik Mensch Gesellschaft. Historische Entwicklung der Informationstechnik (von Anfang bis Heute)

Vorl. 6: Single- und Multitasking

C:\WINNT\System32 ist der Pfad der zur Datei calc.exe führt. Diese Datei enthält das Rechner - Programm. Klicke jetzt auf Abbrechen.

Powerline Netzwerk SICHERHEITS EINSTELLUNGEN. ALL1683 USB Adapter. und. ALL1682 Ethernet bridge. ALLNET Powerline Configuration Utility

Software, die die Welt zusammenhält

Technische Informatik 2 Adressierungsarten

Instruktionssatz-Architektur

Kapitel 1: Einführung. Was ist Informatik? Begriff und Grundprobleme der Informatik. Abschnitt 1.1 in Küchlin/Weber: Einführung in die Informatik

Der Zahlen-Hellseher. Der Zahlen-Hellseher. Der Zahlen-Hellseher. Der Zahlen-Hellseher

Mikroprozessor als universeller digitaler Baustein

Redundanz und Replikation

Geschichte der Rechentechnik und Automaten (Turingmaschine)

1. Der Begriff Informatik 2. Syntax und Semantik von Programmiersprachen. I.2. I.2. Grundlagen von von Programmiersprachen.

Quantum Computing verstehen

Lektion 3: Was ist und was kann ein Computer?

Gliederung. Tutorium zur Vorlesung. Gliederung. Gliederung. 1. Gliederung der Informatik. 1. Gliederung der Informatik. 1. Gliederung der Informatik

Organisatorisches/Einstieg

Steuern des GSR-Interface mit QBasic

Ein kleines Computer-Lexikon

Theoretische Informatik

Algorithmus, siehe (1)

Inhalte der heutigen Vorlesung

Ihr Benutzerhandbuch SAMSUNG SGH-V200

Theoretische Informatik 2

E-PRIME TUTORIUM Die Programmiersprache BASIC

Programmiersprachen und Programmierkonzepte

Staatlich geprüfter EDV-Führerschein

Entscheidungsprobleme. Berechenbarkeit und Komplexität Entscheidbarkeit und Unentscheidbarkeit. Die Entscheidbarkeit von Problemen

Proseminar: Geschichte des Computers Schachprogrammierung Die Digitale Revolution

Rechnerorganisation 2 TOY. Karl C. Posch. co1.ro_2003. Karl.Posch@iaik.tugraz.at

Informatik im Studiengang Allgemeiner Maschinenbau Sommersemester 2014

Das Dilemma des Einbrechers Wer die Wahl hat, hat die Qual!

Elektromechanische Computer

3. Ziel der Vorlesung

Berühmte Informatiker

Mikrocontroller Grundlagen. Markus Koch April 2011

Einführung in die Informatik: Programmierung und Software-Entwicklung, WS 11/12. Kapitel 1. Einführung und Grundbegriffe

Ideen der Informatik. Eine Vorlesung für Hörer aller Fakultäten

Theoretische Informatik 1

Rechnen mit ultra-kalten Atomen: vom Quantensimulator zum Quantencomputer?

Betriebssysteme Kap B: Hardwaremechanismen

Deklarationen in C. Prof. Dr. Margarita Esponda

Kapitel 1. Programmierkurs. 1.2 Allgemeiner Aufbau des Computers. 1.1 Hallo, Computer...?

Der Mensch und seine Maschinen

Johann Wolfgang Goethe-Universität

Die papiernen Tafeln des Alan Mathison Turing

Einführung. Vorlesungen zur Komplexitätstheorie: Reduktion und Vollständigkeit (3) Vorlesungen zur Komplexitätstheorie. K-Vollständigkeit (1/5)

Computergruppe Heimerdingen Basiskurs. Karlheinz Wanja & Richard Zeitler

Aufbau und Funktionsweise eines Computers

Grundlagen der Wirtschaftsinformatik

Installationshinweise Linux Edubuntu 7.10 bei Verwendung des PC-Wächter

Centre of Excellence for High Performance Computing Erlangen Kompetenzgruppe für Supercomputer und Technisch-Wissenschaftliche Simulation

Computer-Architektur Ein Überblick

Programmieren was ist das genau?

D A T E N... 1 Daten Micheuz Peter

Ein kleiner Einblick in die Welt der Supercomputer. Christian Krohn

Vorlesung Programmieren

Vorlesung Programmieren. Inhalt. Funktionsweise von Computern. Ein Blick zurück. 1. Ein Blick zurück. 2.

1. Übung - Einführung/Rechnerarchitektur

Programmieren. Kapitel 2: Der Traum vom automatischen Rechnen ein Streifzug durch die Computergeschichte. Wintersemester 2008/2009

Transkript:

Was ist ein Computer? Was ist ein Programm? Können Computer Alles?

Beispiele von Computern Was ist die Essenz eines Computers?

Die Turing Maschine Auf jedem Bandquadrat steht ein Buchstabe (Symbol, Zeichen) in A,,Z, a,,z, 0,.,9,$,,., leer Endliches Alphabet Steuereinheit ist in einem von endlichen vielen Zuständen q0,q1,q2,. Turingbefehl Zustand Zeichen neuer Zustand neues Zeichen Bewegung q1 a q2 b R Wenn du im Zustand q1 ein a liest, dann gehe in den Zustand q2 über, drucke ein b und bewege den Kopf nach rechts Turingprogramm = Menge (Folge) von Turingbefehlen, je zwei unterscheiden sich in den ersten Spalten

Turingmaschinen Anfangszustand: Zustand = q0, Kopf auf dem rechtesten nichtleeren Quadrat (oder beliebig, falls alle Quadrate leer) Maschine führt Befehle aus, solange einer anwendbar ist. Rechnung kann unendlich lang sein Erstes Beispiel: Eingabe ist Folge von 0 und 1, drehe Buchstaben um (0010 1101) Kopf steht am Anfang auf der rechtesten Ziffer Programm: q0 0 q0 1 L q0 1 q0 0 L

Eine TM, die zählt q0 leer q1 0 S q1 0 q2 1 S q1 leer q2 1 S q1 1 q1 0 L q2 0 q2 0 R q2 1 q2 1 R q2 leer q1 leer L Wir starten die Maschine im Zustand q0 und leerem Band. Das Programm zählt

Alan Turing (1912 1954) Hat diese Maschine 1936 eingeführt in einer Arbeit ON COMPUTABLE NUMBERS, WITH AN APPLICATION TO THE ENTSCHEIDUNGSPROBLEM These: Turing Maschine fasst den Begriff nach Regeln berechenbar Wenn etwas durch eine Maschine berechenbar ist, dann durch eine Turingmaschine

Alan Turing (1912 1954) These: Turing Maschine fasst den Begriff nach Regeln berechenbar 4 Argumente Menschliche Rechner, siehe nächste Folie Beispiele Universelle Turingmaschine Äquivalenz zur Formalisierung von Church

Turings große Leistungen Präzise Fassung des Begriffs berechenbar durch die Definition der Turingmaschine Unentscheidbarkeit des Halteproblems Konstruktion der universellen Turingmaschine Entschlüsselung der Enigma Turing test Musterbildung in der Biologie

Halteproblem Gibt es das folgende Turingprogramm? Eingabe L#w, L = Turingprogramm, w = Wort Eigenschaften Hält immer Falls L mit Eingabe w anhält, dann hält es in q1 Falls L Eingabe w nicht anhält, dann hält es in q2 Turing: ein solches Programm gibt es nicht

Beweis Annahme, Programm existiert, nenne es Q Dann gibt es auch das folgende Programm L Eingabe, Turingprogramm P Verhalten: falls Q mit Eingabe P#P in q1 hält, dann hält L nie Falls Q mit Eingabe P#P in q2 hält, dann hält L an Was macht L an der Eingabe L? Hält es an oder läuft es für immer?

Beweis Annahme, Programm existiert, nenne es Q Verhalten von L an Eingabe L falls Q mit Eingabe L#L in q1 hält, dann hält L nie Falls Q mit Eingabe L#L in q2 hält, dann hält L an Aber Eigenschaften von Q Falls L mit Eingabe L anhält, dann hält Q an Eingabe L#L in q1 Falls L mit Eingabe L nicht anhält, dann hält Q an Eingabe L#L in q2

Universelle Turingmaschine Eingabe L#w, L = Turingprogramm, w = Wort Eigenschaft: tut, was immer L mit Eingabe w tut Diese Maschine kann jedes Programm ausführen, sie ist universell Wenn man universelle Maschinen baut, dann muss man sich nicht darum kümmern, was sie nachher tun sollen (Jeder Computer kann jedes Programm ausführen)

Simulation von TMs durch Fliesen

Erste Computer Zuse Z1 (1937) Z3 (1941) Z4 (1945) ENIAC (1946) Z3, Z4 und ENIAC sind programmierbar (Programm extern) und Turingmächtig Z3 und Z4 arbeiten mit Relais, ENIAC arbeitet mir Röhren 15

Frühe Speicher Zuse 16

EDVAC (Electronic. Computer) First Draft of a Report on the EDVAC by John von Neumann, June 30, 1945 EDVAC, fertiggestellt in 1951 Stored program Speicher, 5.5 kilobytes multiplication time 2.9 milliseconds 6,000 vacuum tubes consumed 56 kw of power 45.5 m² of floor space and weighed 17,300 lb (7,850 kg) operating personnel was thirty people for each eight-hour shift Kosten 500,000 Dollar (entspricht etwa 6 Millionen in 2010) Das Vorbild für alle modernen Rechner 17

Mein erster Rechner Programmierbare Elektronische Rechenanlage München (PERM), röhrenbasiert Betriebnahme 7. Mai 1956, Piloty/Sauer erster ALGOL-Compiler KM lernte auf der PERM programmieren 18

PERM 19

Von Neumann Rechner Speicher CPU Akkumulator Befehlzähler Speicher enthält Daten und Programm Befehlszyklus 1. Führe Befehl mit Nummer BZ aus 2. Erhöhe BZ um eins 3. Gehe nach 1. 20

Typische Befehle LOADZERO ACC 0 LOAD n ACC M[n] STORE n M[n] ACC ADD n ACC ACC +M[n] DECR ACC ACC - 1 JUMPPOS n if ACC > 0, BZ n STOP 21

In M[1] steht eine Zahl n, bilde 1 + + n 1. LOADZERO 2. STORE 2 3. LOAD 2 M[1] = i und M[2] = i+1 + + n 4. ADD 1 5. STORE 2 M[1] = i und M[2] = i + + n 6. LOAD 1 7. DECR 8. STORE 1 M[1] = i 1 und M[2] = i + + n 9. JUMPPOS 3 10.STOP M[1] = 0 und M[2] = 1 + + n 22

Ein moderner PC Hauptspeicher: 10 9 Worte a 64 Bit Befehlszyklus: 10 9 Befehle pro Sekunde Eine Million mal leistungsfähiger (Geschwindigkeit, Speicher, Größe), Tausend mal billiger als 1950 Neuerungen seit 1950 Interrupts (Unterbrechungen) Speicherhierarchie: Cache, Main, Disk Bildschirme und Graphik Netze Preis und Leistung Software, Nutzerfreundlichkeit 23

Supercomputer 72 Schränke, 73000 PowerPCs mit je 2 Gbyte RAM Simulation: Physik, Klima, Chemie, Strömung 13 Mio Euro 24

Bildschirme und Graphik Dieser Schirm: 1366 x 768 Pixels für jedes der Pixel kann man Farbe und Helligkeit einstellen Graphikkarte zeigt die Werte auf dem Bildschirm an. 25