Computergrundlagen Geschichte des Computers

Ähnliche Dokumente
Computergrundlagen Geschichte des Computers

Computergrundlagen Turingmaschinen und Programmierung

Computergrundlagen Geschichte des Computers

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

Turingmaschinen. und eine kleine Einführung in Bereiche der theoretischen Informatik

Die Sandy-Bridge Architektur

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

Neue Prozessor-Architekturen für Desktop-PC

2. Computer (Hardware) K. Bothe, Institut für Informatik, HU Berlin, GdP, WS 2015/16

Allgemeine Informatik Thema 1 Informatik; Konzepte (II)

Rechnerorganisation. (10,11) Informationskodierung (12,13,14) TECHNISCHE UNIVERSITÄT ILMENAU. IHS, H.- D. Wuttke `09

Turingmaschinen Vorlesung Berechenbarkeit und Komplexität alias Theoretische Informatik: Komplexitätstheorie und effiziente Algorithmen

Datenpfad einer einfachen MIPS CPU

Ideen und Konzepte der Informatik. Rechner. Kurt Mehlhorn

Aufbau und Funktionsweise eines Computers

Rechnerarchitektur und Betriebssysteme (CS201): Architektur, ALU, Flip-Flop

Wichtige Rechnerarchitekturen

Auffrischung Einige (wenige) Grundlagen der Theoretischen Informatik

Datenpfad einer einfachen MIPS CPU

Ideen und Konzepte der Informatik Rechner Antonios Antoniadis (basierend auf Folien von Kurt Mehlhorn)

Grundlagen der Theoretischen Informatik: Übung 10

Theoretische Informatik für Wirtschaftsinformatik und Lehramt

Turing-Maschinen: Ein abstrakes Maschinenmodell

Brückenkurs / Computer

Berechenbarkeit und Komplexität

Informatik 12 Kapitel 3 - Funktionsweise eines Rechners

Algorithmen und Komplexität, Teil II: Berechenbarkeit und Komplexität

Datenpfad einer einfachen MIPS CPU

Wie funktionieren Computer?

Computer-Architektur Ein Überblick

Mikroprozessor als universeller digitaler Baustein

Dipl. Ing. (FH) Ehrenfried Stuhlpfarrer

Einstieg imperative Programmierung auf Von-Neumann-Rechnern

Berechenbarkeit. Script, Kapitel 2

Teil VIII Von Neumann Rechner 1

Datenpfad einer einfachen MIPS CPU

B Einführung. 1 Historische Entwicklung. 1 Historische Entwicklung (3) 1 Historische Entwicklung (2)

Rechnerorganisation. H.-D. Wuttke `

11. Übungsblatt. x y(top(push(x, y)) = y)

Prinzipieller Aufbau und Funktionsweise eines Prozessors

1 Einführung. 2 Typ-0- und Typ-1-Sprachen. 3 Berechnungsmodelle. 4 Unentscheidbarkeit. 5 Unentscheidbare Probleme. 6 Komplexitätstheorie

Intel Xeon Phi. Praktikum Parallele Rechnerarchitekturen May 13,

Einführung in die Theoretische Informatik

3. Rechnerarchitektur

Übungen zu Grundlagen der Rechnerarchitektur und -organisation: Bonusaufgaben Übung 8 und Präsenzaufgaben Übung 9

Frank Kuchta Markus Rüger

Theoretische Informatik. Berechenbarkeit

LOOP-Programme: Syntaktische Komponenten

Mikroprozessortechnik Grundlagen 1

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

Brückenkurs / Computer

3. RAM als Rechnermodell

Grundlagen der Rechnerarchitektur. MIPS Assembler

Berechenbarkeit. Script, Kapitel 2

Kontrollpfad der hypothetischen CPU

Kontrollpfad der hypothetischen CPU

1 Prädikatenlogik: Korrektheit, Vollständigkeit, Entscheidbarkeit

Ideen der Informatik. Wie funktionieren Computer? Kurt Mehlhorn

Seminar Parallele Rechnerarchitekturen SS04 \ SIMD Implementierung aktueller Prozessoren 2 (Dominik Tamm) \ Inhalt. Seite 1

Theorie der Informatik

Vorlesung Programmieren

Musterlösungen Technische Informatik 2 (T2) Prof. Dr.-Ing. D. P. F. Möller

UltraSPARC T2 Processor

CPU Speicher I/O. Abbildung 11.1: Kommunikation über Busse

1.5 Turing-Berechenbarkeit

Computer - Aufbau u. Funktionsweise

Arithmetik, Register und Speicherzugriff. Grundlagen der Rechnerarchitektur Assembler 9

Informatik III. Christian Schindelhauer Wintersemester 2006/ Vorlesung

Instruktionssatz-Architektur

HW- und SW-Komponenten eines PC. IBM 5150 aus dem Jahre 1981

Struktur der CPU (1) Die Adress- und Datenpfad der CPU: Befehl holen. Vorlesung Rechnerarchitektur und Rechnertechnik SS Memory Adress Register

Allgemeine Informatik Thema 1 Informatik; Konzepte

Mächtigkeit von WHILE-Programmen

Grundlagen der Theoretischen Informatik

Cell and Larrabee Microarchitecture

1.5 Turing-Berechenbarkeit

Grundlagen der Rechnerarchitektur

Kontextsensitive und Typ 0 Sprachen Slide 2. Die Turingmaschine

Typ-0-Sprachen und Turingmaschinen

Aufbau und Funktionsweise eines Computers

Einleitung. Dr.-Ing. Volkmar Sieh WS 2005/2006. Institut für Informatik 3: Rechnerarchitektur Friedrich-Alexander-Universität Erlangen-Nürnberg

Technische Informatik - Eine Einführung

11.1 Kontextsensitive und allgemeine Grammatiken


Transkript:

Computergrundlagen Geschichte des Computers Axel Arnold Institut für Computerphysik Universität Stuttgart Wintersemester 2010/11

1641: Rechenmaschine von B. Pascal B. Pascal, 1632-1662 mechanische Rechenmaschine addierte & subtrahierte ganze Zahlen nicht programmierbar Axel Arnold Computergrundlagen 2/12

1837: Analytical Engine von C. Babbage C. Babbage, 1791-1871 programmierbare mechanische Rechenmaschine 3 Lochkartenleser für Programm, Konstanten und Eingabezahlen 4 Grundrechenarten, Sprünge nie gebaut Axel Arnold Computergrundlagen 3/12

1941: Z3 von K. Zuse K. Zuse, 1910-1995 Zuse Z1 Zuse Z3 Z1, 1937: programmierbare mechanische Rechenmaschine Z3, 1941: elektromechanischer Rechner: Relais und Kernspeicher 0,9 / 1,4 Flops (Fliesskomma-Operationen / Sekunde) Programm und Daten über eigene Lochkartenleser im 2. Weltkrieg zerstört, Rekonstruktion in München Axel Arnold Computergrundlagen 4/12

1946: ENIAC erster Röhrenrechner 350 Flops Grundrechenarten + Wurzeln Programmeingabe durch Verdrahtung 1948 Einbau eines Befehlsspeichers Axel Arnold Computergrundlagen 5/12

Von Neumann-Architektur (1945) J. von Neumann, 1903-1957 memory 0 1 2 3 4 5 6 7 8 9 10... control unit CPU arithmetic logic unit accumulators input/output Grundlage aller modernen Rechnerarchitekturen nach ENIAC ein linearer Ganzzahl-Speicher für Programme und Daten random access memory (RAM) Speicher mit wahlfreiem Zugriff Befehle sind Zahlen im Speicher, können überschrieben werden Axel Arnold Computergrundlagen 6/12

Von Neumann-Architektur (1945) J. von Neumann, 1903-1957 memory 0 1 2 3 4 5 6 7 8 9 10... control unit CPU arithmetic logic unit accumulators input/output Befehle werden sequenziell abgearbeitet Befehlszähler enthält die Adresse des aktuellen Befehls wird normalerweise hochgezählt Sprünge und Verzweigung sind spezielle Befehle Axel Arnold Computergrundlagen 6/12

1976: Apple I / II 1976: Apple I, erster Serien -PC, 100 Exemplare 1977: Apple II, 2 Millionen Exemplare 8-bit CPU (6502), 48kB RAM Massenmarkt: C64 30 Millionen Exemplare Grund: zahlreiche Computerspiele erst ab ca 1990 setzen sich IBM-kompatible Heim-PCs durch Axel Arnold Computergrundlagen 7/12

2008: Intel Nehalem Control unit ALUs + FPUs Intel Nehalem microarchitecture quadruple associative Instruction Cache 32 KByte, Uncore 128-entry TLB-4K, 7 TLB-2/4M per thread To Input/Output Loop Stream Decoder 2 x Retirement Register File Store Data AGU Store Addr. Unit Prefetch Buffer (16 Bytes) Predecode & Instruction Length Decoder Complex Decoder Instruction Queue 18 x86 Instructions Alignment MacroOp Fusion Simple Decoder Simple Decoder Simple Decoder Decoded Instruction Queue (28 µop entries) MicroOp Fusion 2 x Register Allocation Table (RAT) Reorder Buffer (128-entry) fused Reservation Station (128-entry) fused AGU Load Addr. Unit 128 Integer/ MMX ALU, Branch SSE ADD Move Integer/ MMX ALU SSE ADD Move Branch Prediction global/bimodal, loop, indirect jmp FP ADD Micro Instruction Sequencer Port 4 Port 3 Port 2 Port 5 Port 1 Port 0 FP MUL Integer/ MMX ALU, 2x AGU SSE MUL/DIV Move Quick Path Interconnect DDR3 Memory Controller Common L3-Cache 8 MByte 256 KByte 8-way, 64 Byte Cacheline, private L2-Cache 512-entry L2-TLB-4K 4 x 20 Bit 6,4 GT/s 3 x 64 Bit 1,33 GT/s To Memory 128 128 128 Memory Order Buffer (MOB) Result Bus 256 128 128 octruple associative Data Cache 32 KByte, 64-entry TLB-4K, 32-entry TLB-2/4M Auch ein Nehalem-Kern ist immer noch eine von Neumann-CPU! Axel Arnold Computergrundlagen 8/12

Theoretische Informatik, Berechenbarkeit A. Turing, 1912-1954 Arbeitsband (Speicher) 1 0 1 0 1 0 1 0 Aktuelle Schreib /Leseposition Turingmaschine Zustand s ca 1920, D. Hilbert: Was ist berechnenbar, was beweisbar? 1931, K. Gödel: Entweder widerspruchsfrei oder vollständig! 1936: A. Turing: Turingmaschine, in On Computable Numbers, with an Application to the Entscheidungsproblem Nicht alles ist berechnenbar! Wir können nicht mal bestimmen, was nicht beweisbar ist p Axel Arnold Computergrundlagen 9/12

Turingmaschinen Eine Turingmaschine ist definiert durch eine endliche Menge Γ, das Arbeitsalphabet, mit Leerzeichen Γ eine endliche Menge Z von Zuständen der Maschine den Startzustand s Z und den Haltezustand h Z eine Überführungsfunktion δ : Z Γ Z Γ {,, } Eine Konfiguration ist eine Zeichenkette w über dem Arbeitsalphabet eine Position p in w, die aktuelle Arbeitsposition der aktuelle Zustand z der Turingmaschine Eine Konfiguration (w, p, z) führt in eine andere (w, p, z ) über, wenn δ(z, w p ) = (z, w p, d), und d p nach p versetzt. Startkonfiguration: Eine Eingabe w, p am Anfang von w, Zustand s. Axel Arnold Computergrundlagen 10/12

Darstellung von Turingmaschinen Beispiel: Eine 1 vorne einfügen 0 : 0, A 0 : 1, : 0, 1 : 0, s h 0 : 1, 1 : 1, : 1, B :, 1 : 1, A: 0 gemerkt B: 1 gemerkt s 0 A 1 s 1 B 1 s h A 0 A 0 A 1 B 0 A h 0 B 0 A 1 B 1 B 1 B h 1 Ablauf: Schreibe Zustand in das Arbeitsband vor die aktuelle Position, bezeichnet Übergang s101 1B01 11A1 110B 1101s Axel Arnold Computergrundlagen 11/12

Turingmaschinen II Turingmaschinen können kombiniert werden Beispiel: Hinter jedem Zeichen eine 0 einfügen universelle Turingmaschine: eine Turingmaschine, die berechnet, was eine Turingmaschine tut Halteproblem: es gibt keine Turingmaschine, die entscheidet, ob eine gegebene Turingmaschine bei leerer Eingabe anhält Turingmaschinen und von Neumann-Computer sind äquivalent Church-Turing-These: Turing-berechenbare Funktionen sind genau die von Menschen intuitiv berechenbaren Funktionen Axel Arnold Computergrundlagen 12/12