HUMBOLDT-UNIVERSITÄT ZU BERLIN INSTITUT FÜR INFORMATIK
Vorlesung 2
COMPUTER GESCHICHTE Sommersemester 2001 Leitung: Pr...
16 downloads
538 Views
2MB Size
Report
This content was uploaded by our users and we assume good faith they have the permission to share this book. If you own the copyright to this book and it is wrongfully on our website, we offer a simple DMCA procedure to remove your content from our site. Start by pressing the button below!
Report copyright / DMCA form
HUMBOLDT-UNIVERSITÄT ZU BERLIN INSTITUT FÜR INFORMATIK
Vorlesung 2
COMPUTER GESCHICHTE Sommersemester 2001 Leitung: Prof. Dr. Miroslaw Malek
D - CA - II - CG - 1
GESCHICHTE DES RECHNENS UND DER RECHNERARCHITEKTUR DIE ANFÄNGE WANN
WER
WAS
40001200 BC
Bevölkerung von Sumer
Tontafeln mit Handelsaufzeichnungen
Ursprung unbekannt Abakus (benutzt in Babylon, später in der arabischen Welt, Europa, China und Japan)
1570-80
John Napier (1550-1617, Scotland)
Logarithm Bones
1617
Robert Bissaker
Wood Strip Logs
1620
Edmund Gunter (1581-1626, England)
Slide Rule
D - CA - II - CG - 2
MECHANISCHES ZEITALTER (1623-1945) WANN
WER
WAS
1623
Wilhelm Schickhard (1592-1633, Dtl.)
Addierer
1642
Blaise Pascal Addierer (+,-) (1623-1662, Frankreich) Neuerung: Sperrad für Überträge
1671
Gottfried Leibniz (1646-1716, Dtl.) baute den Vorgänger des 4-FunktionsRechners
D - CA - II - CG - 3
Rechner (+,-,x,/,)
Im 18.Jh. war die Entwicklung auf die Verbesserung der 4-Funktions-Rechner konzentriert. WANN
WER
WAS
1794
G. F. Prony
Autometer (+,-,x,/)
berechnete in einem Projekt für die Regierung Frankreichs die Logarithmen von 1 bis 200.000
1820
Thomas de Colmar (Frankreich)
Arithmometer
baute einen 4-Funktions-Rechner
1823
Charles Babbage (1792-1871) entwarf die Differential (Difference) Maschine
D - CA - II - CG - 4
Differential Maschine
Die Differential Maschine von Charles Babbage Die Maschine kann Polynome 6. Grades mit 20 Stellen Genauigkeit lösen.
n f ( x) = ∑ ai xi i=0
∆i y j +1 = ∆i y j + ∆i +1 y j
Babbage bekam £ 17.000, um die Maschine zu bauen, aber das Projekt wurde 1842 abgebrochen. D - CA - II - CG - 5
WANN
WER
WAS
1834
Charles Babbage
Analytische
Ein Zeitgenosse, L. G. Maschine Menebrea, entwickelte das hypothetische Programm zum Lösen von Linearen Gleichungen
DIE ANALYTISCHE MASCHINE Mühle
DATEN
Speicher
Ausgabe Kartenstanzer
INSTRUKTIONEN Operationskarten
Variable Karten
PROGRAMM Bestandteile: 1. Speicher 2. Mühle ist die arithmetische Einheit 3. Programm (Jaquard Loom-Lochkarten) a. Operationskarten (Programmschritte) b. Variable Karten (Speicherauswahl-Karten) Die Analytische Maschine enthielt alle wesentlichen Bestandteile eines allgemein verwendbaren, automatischen Rechners. D - CA - II - CG - 6
PROGRAMM ZUM LÖSEN LINEARER GLEICHUNGEN x1 =
a11 x1 + a12 x2 = b1 a21 x1 + a22x2 = b2
x2 =
DATEN
Var
Inhalt
a22 b1 – a12 b2 a11 a22 – a12 a21 a11 b2 – a21 b1 a11 a22 – a12 a21
PROGRAMM Op.-
Variable Karte
karte
Quelle
Ziel
Rechnung
w0 = a11
x
w2, w4
w8
w8
Å
a22 b1
w1 = a12
x
w1, w5
w9
w9
Å
a12 b2
w2 = b1
x
w0, w4
w10
w10
Å
a11 a22
w3 = a21
x
w1, w3
w11
w11
Å
a12 a21
–
w8, w9
w12
w12
Å
a22 b1 – a12 b2
w4 = a22
–
w10, w11
w13
w13
Å
a11a22 – a12a21
w5 = b2
÷
w12, w13
w14
w14
Å
w12 ÷ w13
Die Daten werden in den Speicher geladen und die Rechnung gemäß der Tabelle vollzogen. Die größte Neuerung war das Konzept eines programmierbaren Rechners. D - CA - II - CG - 7
WANN
WER
WAS
1837-53
George Scheuty (1785-1873)
Differential Maschine
baute eine Version von Babbages Differential Maschine, die Polynome 3. Grades auf 15 Stellen lösen konnte 1854
George Boole (1814-1864, England)
1872
E. D. Borbour
Binäre Logische Operationen: AND, OR, NOR Printing Calculator
Tinte mußte umständlich von Hand eingefüllt werden 1874-78
Lord Kelvin (1824-1907, England)
Analoge Maschine
1875
Frank Baldwin (1838-1925, USA)
Printing Calculator
1874-77
W. F. Odhner (Schweden)
Desk Calculator
1885
D. E. Felt (1862-1930, USA)
Comptometer
Printing Calculator mit eindrückbaren Tasten D - CA - II - CG - 8
WANN
WER
WAS
1890
Herman Hollerith (18601926, USA) (1890 Census)
Lochkarten, Tabelliermaschine
Elektrisches Tabulier System
Tabulating Machine Co. (1896)
Computation-Tabulating Recording Co. (1911)
International Business Machines Corp. (IBM) (1924)
D - CA - II - CG - 9
WANN
WER
WAS
1892
William S. Burroughs Printing (verkaufte 1 Mio. bis 1926) Calculator
1904
John A. Fleming patentiert Vakuum Dioden Röhre die Vakuum Dioden Röhre
1908
Campbell Swinton (England)
1912-30
Monroe, Baldwin, Frieden, 4 Funktions Rechner Marchant, etc.
1930-50
1936
Elektrische ScanMethode für die Kathodenstrahlröhre
motorbetriebene Rechner Alan Turing (1912-1954, England)
D - CA - II - CG - 10
Arbeit über Computable Numbers
KONRAD ZUSE (1910-1995) 1934
Zuse schlägt vor, eine elektromechanische Rechenmaschine zu bauen
1936
Zuse patentiert eine Anwendung für die automatische Rechenausführung mit einem binären „Kombinationsspeicher“
Zuses Z-Serie von Computern 1938
Z1
mechanischer Computer
1940
Z2
nutzt Telefonrelays anstelle von mechanischen logischen Schaltungen
1941
Z3
erster funktionsfähiger Programm-gesteuerter elektro-mechanischer Rechner
1945
Z4
Z4 übersteht den Zweiten Weltkrieg, was die Nachkriegsentwicklung von wissenschaftlichen Computern in Deutschland unterstützt
D - CA - II - CG - 11
WANN
WER & WAS
1937
Howard Aiken (USA) reicht einen Vorschlag für eine digitale Rechenmaschine für die 4 Grundrechenarten u.a. an IBM
1943
Engländer bauen einen Vakuum-Röhren-Computer zum Code-Knacken (Colossus)
WW II
Amerikaner bauen einen elektronischen, allgemein verwendbaren Rechner, zuvor baut John Atanasoff einen elektro-mechanischen digitalen Computer mit Vakuumröhren Howard Aiken von der Harvard Universität und IBM bauen eine elektro-mechanische Maschine namens Harvard Mark I
2,4 m
15 m
ATLAS wird an der Manchester Universität entwickelt
D - CA - II - CG - 12
Nach dem Zweiten Weltkrieg entwickelte sich starke Aktivität im Bereich der Rechentechnik und das Zeitalter der modernen Computer begann. WANN
WER & WAS
1943-46
ENIAC (Electronic Numerical Integrator and Calculator) von J. Mauchly und J. Presper Eckert, erster frei verwendbarer elektronischer Computer
Ein Programm wurde von Hand durch Schalter und Kabelstecken eingegeben. Er benutzte 18.000 Röhren, wog 30 Tonnen und hatte eine Performance von 5,000 ops/sec. ENIAC konnte Lochkarten lesen und schreiben und war an einen Drucker angeschlossen. 1945
John von Neumann führt das Konzept eines gespeicherten Programms ein.
D - CA - II - CG - 13
WANN
WER & WAS
1947
erster Transistor, entwickelt von John Bardeen, Walter Brattain und William Shockley für Bell Labs (Nobelpreis 1956)
1947-48
Magnetischer Trommel-Speicher wird eingeführt
1948
Claude Shannon veröffentlicht „A Mathematical Theory of Communication“
1948
Richard Hamming entwickelt den Hamming Code für Fehlerkorrektur in Datenblöcken
1949
EDSAC (Electronic Delay Storage Automatic Calculator) wurde an der Cambridge Universität in England von Maurice Wilkis entwickelt
D - CA - II - CG - 14
WANN
WER & WAS
1949
Whirlwind Computer von Jay Forrester (MIT) mit 5000 Vakuumröhren
1950
EDVAC (Electronic Discrete Variable Automatic Computer) basierte auf Ideen, die am Institute for Advanced Studies of Princeton University entwickelt wurden.
1951
UNIVAC I (Universal Automatic Computer) wurde von Eckert und Mauchly gebaut, er benutzte Vakuumröhren (vor allem Trioden und Pentoden), Speicherzugriffszeit 0,5 ms.
D - CA - II - CG - 15
GESCHICHTE DES 20. JAHRHUNDERTS WANN
WAS
1951
Maurice Wilkes führt Mikroprogrammierung ein
1951
Jay Forresters Matrix Core Speicher
1951-52
Grace Murray Hooper entwickelt A-0 (1. Compiler)
1952
John Neumanns IAS Bit-parallele Maschine
1953
IBM 650 - erster massenproduzierter Computer
1953
Kenneth Olsen nutzt Jay Forresters Core-Speicher, um den Memory Test Computer zu bauen
1954
Texas Instruments stellt den Silikon-Transistor vor D - CA - II - CG - 16
WANN
WAS
1956
Fuji Photo Film Co. (Japan) entwickelt einen 1700 Vakuumröhren-Computer für Linsen-Design Berechnungen
1956
Univac mit Transistors
1957
John Backus entwickelt mit Mitarbeitern bei IBM den ersten FORTRAN Compiler
1957
NTT (Nippon Telegraph and Telephone Co., Japan) entwickelt Musasino-1 (erster Parametroncomputer)
1958
Jack Kilby (Texas Instruments) und Robert Noyce (Fairchild) entwickeln jeweils für sich erste Semiconductor ICs
1959
Das Committee on Data Systems Languages wird gegründet und entwirft COBOL (Common Business Oriented Language)
1962
die Stanford und die Purdue Universität richten die ersten Abteilungen für Computer Science ein D - CA - II - CG - 17
WANN
WAS
1964
IBM kündigt das System/360 an. „Computer der 3. Generation“
1964
IBMs 7-Jahre Projekt „Sabre“ für weltweite Flugreservierungen ist voll implementiert
1964
Doug Engelbart erfindet die Maus
1967
4 Funktions-Handrechner (Texas Instruments)
1968
Edsger Dijkstra schreibt über GOTO Programmierung vs. strukturierte Programmierung
1968
Cray CDC7600 Supercomputer erreicht 40 MFLOPS
1970
E. F. Codd beschreibt das relationale Model D - CA - II - CG - 18
WANN
WAS
1973
Alan Kay entwickelt den Vorgänger des PCs, sein „Office Computer“ hatte Icons, Grafik und eine Maus
1975
IBM führt den Laserdrucker ein
1976
Steve Jobs und Steve Wozniak bauen den Apple I
1977
Bill Gates und Paul Allen gründen Microsoft
1984
Sony und Phillips führen die CD-ROM ein
1984
NEC baut den 256-Kbit RAM und IBM führt einen 1-Mbit RAM ein
1984
IBM nutzt Intels 80286 für den neuen PC AT
1985
Cray 2 und Thinking Machines' parallel-processor Connection Machine erreichen 1 Mrd. ops/second
1990
Berners-Lee beschreibt den WWW Prototyp (URLs, HTML, HTTP)
1993
erster grafischer Web-Browser NCSA Mosaic wird an der Illinois Universität programmiert D - CA - II - CG - 19
GESCHICHTE DES ERFOLGREICHSTEN MINICOMPUTERS PDP-11 JAHR
MODELL
WORD LÄNGE
SPEICHER ZYKLUSZEIT
SPEICHER KAPAZITÄT KOSTEN
D.E.C. wurde von K. OLSEN gegründet
1957 D - CA - II - CG - 20
1959
PDP-1
18-BIT
5µs
4K-64K
$120.000 (PERIPHERIE)
1963
PDP-5
12-BIT
6µs
1K-4K
$30.000 (PC & DMA)
1965
PDP-8
12-BIT
3µs
1K-4K
$18.000 (SOFTWARE PAKETE)
1969
PDP-11
16-BIT
300 ns - 980 ns -128K
VIELE MODELLE, z.B.: PDP-11/40, PDP-11/45 1975
LSI-11
16-BIT
300 ns - 980 ns
(375 ICs auf dem PCB)
32K
$15.000-$30.000 (UNIBUS KONZEPT)
ÜBERBLICK COMPUTER GENERATIONEN GENERATION
PERIODE
TECHNOLOGIE
ERSTE
1945-1954
VAKUUM RÖHREN
ZWEITE
1955-1964
TRANSISTOREN
DRITTE
1965-1974
INTEGRIERTE SCHALTKREISE (SSI, MSI)
VIERTE
1975- ?
INTEGRIERTE SCHALTKREISE (LSI, VLSI)
FÜNFTE
?
KÜNSTL. INTELLIGENZ, NEURONALE NETZE, DIGITAL-ANALOGE HYBRIDEN
D - CA - II - CG - 21
COMPUTER DER ERSTEN GENERATION (1945-1954) Zentrale Recheneinheit Arithmetisch-logische Einheit AC
MQ
Ein/Ausgabe Geräte
Arithm.-logische Schaltkreise DR
Instruktionen und Daten
IBR
IR
PC
Hauptspeicher
AR Adressen
Steuerschaltkreise
Steuersignale
STRUKTUR DES IAS COMPUTERS
Programm Kontrolleinheit
CHARAKTERISTIKA Random Access Memory 4096 (2 1/2) Word 40 Bit Word 1 Adress (OP ADDR) Parallele Binärschaltungen High-Speed Register (CPU)
AC - Akkumulator MQ - Multiplexer-Quotient DR - Daten (40 Bit) AR - Adresse (12 Bit) IBR - Instruktions-Puffer PC - Instruktions Adresse (Programmzähler) D - CA - II - CG - 22
REGISTER TRANSFER SPRACHE Instruktion
Kommentar
AC
Õ M(100)
Transferiert Inhalt der Speicherstelle 100 in den Akkumulator
AC
Õ AC + M(101)
Addiert den Inhalt der Speicherstelle 101 zum Inhalt des Akkumulators und schreibt das Ergebnis in den Akkumulator
M(102) Õ AC
0
Schreibt den Inhalt des Akkumulators an die Speicherstelle 102
39
1
DATEN WORD
Vorzeichen Bit
SYMBOLISCH LDA ADD STA
A B C
Linke Instruktion 0
Opcode
8
Rechte Instruktion 19 20
Adresse
28
Opcode
INSTRUKTIONS WORD D - CA - II - CG - 23
39
Adresse
COMPUTER DER ZWEITEN GENERATION (1955-1964) Magnettrommel Speicher
Magnetdisc Speicher
Magnetband Speicher Drucker
Zentrale Recheneinheit AC
MQ
Kartenleser
Arithm.-logische Schaltkreise
Trommel/Disc Kontrolleinheit
DR
IO Prozessor (Kanal)
IO Prozessor (Kanal)
Schnittstelle zum Benutzer Speicher Kontrolleinheit (Multiplexer)
Indexregister XR(1-7)
IBR
Corespeicher
Indexaddierer
IR
Steuerschaltkreise
AR
PC
Steuersignale
Speicheradresse
IBM 7094 D - CA - II - CG - 24
DATEN FORMATE DES IBM 7094 0 1
35
S
0 1
Festkommazahl 9
35
S Exponent
Mantisse
Fließkommazahl 21
0
Opcode
35
Adresse
Instruktion CHARAKTERISTIKA Transistortechnologie Indexregister Fließkomma Subroutine linkage 200 Instruktionen Indirekte Adressierung Interrupts Hochsprache
Batch processing Echtzeit Multiprocessing Getrennte E/A 32K Speicher Magnetischer Core-Speicher Speicher-Interleaving Magnetische Trommel
D - CA - II - CG - 25
DRITTE GENERATION (1965 - 1974) CPU STRUKTUR DER IBM S/360-370 SERIE 16 32-bit General Purpose Registers 4 64-bit Fließkommaregister
Arithm.Einheit Festkomma
Dezimale Arithm.Einheit
Arithm.Einheit Fließkomma
Interne Busse
AR
IR
PC
DR
Programm status word Speicher Kontrolleinheit D - CA - II - CG - 26
zum Haupt speicher
IBM S/360-370 DATEN FORMATE niederwertigstes Byte Zone
Digit
Zone
Digit
Sign
Digit
in Zonen geteilte Dezimalzahl niederwertigstes Byte Digit
Digit
Digit
Digit
Sign
Digit
gepackte Dezimalzahl 31 15
0 1 S Festkomma-Binärzahl
127 63 31
7 8
01 S
Mantisse
Exponent
Fließkomma-Binärzahl 1 byte Zeichen
Zeichen Alphanumerische Daten
D - CA - II - CG - 27
Zeichen
VIERTE GENERATION (1971-19??)
MICROPROZESSOREN Intel 4004
(1971) 4-BIT WORD 45 INSTRUKTIONEN
Z 80
(1973) 8-BIT WORD
INTEL 8080 (1973) 8-BIT WORD 16 ADRESS LEITUNGEN (216=64 K SPEICHER) M6800
8-BIT WORD 72 INSTRUKTIONEN (8-BIT BYTES WORDS) INDEXIERTE ADDRESSIERUNG
MC68000
(1979) 16-BIT WORD
M 68020
(1985) 32-BIT WORD
Intel 80486 (1989) 32-BIT WORD ALPHA
(1993) 64-BIT WORD
D - CA - II - CG - 28
INTEL 8080 MICROPROZESSOR 8-bit interner Datenbus
AC
Multiplexer
FR
Arithm.-logische Schaltkreise
Interne Steuerleitungen
Steuerschaltkreise
IR
C
D
E
H
L
Register feld
Stackzeiger Programmzähler
DR 4 Stromversorgungs12 externe leitungen Steuerleitungen
B
Adreßregister
8 bidirectionale 16 Datenleitungen Adreßleitungen
FR Flag-Register (5 Bits) speichert: Vorzeichen, Carry, Overflow, Interrupt enable, Parität IR ist ein Instruktionsregister DR Datenregister z.B.
ADD M ADC M DAA dann
AC Õ AC + M(H,L) AC Õ AC + M(H,L) + FR(C) wobei FR der Wert d. Akkumulator f.Dezimalkorrektur overflow (carry) Bits ADD M DAA
für binär für dezimal D - CA - II - CG - 29
MIPS R4000 MICROPROZESSOR 64-bit System Bus
System Steuerung
S-cache Steuerung
CP0
Datencache
P-cache Steuerung
CPU
Instruktionscache
FPU
Ausnahme/Steuer Register Speicherverwaltungsregister
CPU Register
FPU Register
ALU
Pipeline Bypass
Load Aligner/Store Driver
FP Multiplier
Integer Multiplier/Divider
FP Divider
Translation Lookaside Puffer
Addreßeinheit
FP Add, Konvertierung, Quadratwurzel
PC Incrementer
Pipeline Steuerung
CPU Register - frei verwendbare Register 63
32 31 R0 R1
- Multiply/Divide Register 0
63
32 31 MultHI MultLO
0
- Programmzähler 63 R31 D - CA - II - CG - 30
32 31 PC
0