Sie sind auf Seite 1von 3

John von Neumann und die Von-Neumann-

Architektur
Computer der ersten Generation waren riesige Geräte. So bestand zum Beispiel der ENIAC
(1943), ein aus Mitteln der amerikanischen Armee finanziertes Projekt, aus 18.000
Vakuumröhren und 1500 Relais, wog 30 Tonnen und verbrauchte 140 KW an Strom.
Programmiert wurde der ENIAC durch Einstellen von bis zu 6000 mehrstelligen Schaltern
und durch Anschluss unzähliger Buchsen mit einem wahrhaften Wald an
Steckbrückenkabeln (vgl. [Tanenbaum2006, S. 30ff.])

Im Jahre 1944 legte John von Neumann, ein ehemaliges Mitglied des ENIAC-Projektes, ein
Architektur-Konzept für einen speicherprogrammierten Universalrechner vor. Von Neumann
fiel auf, dass die Programmierung von Computern mit Unmengen von Schaltern und Kabeln
langsam, mühsam und unflexibel war.

Von Neumann erkannte, dass sich das Programm mit den Daten im Speicher des Computers
in digitaler Form darstellen lässt, und fand heraus, dass sich die schwerfällige, serielle
Dezimalarithmetik des ENIAC, bei der jede Ziffer mit zehn Vakuumröhren (1 On und 9 Off)
dargestellt wird, durch parallele Binärarithmetik ablösen lässt.

Von-Neumann-Architektur
Der erste Entwurf von Neumanns ist heute als von-Neumann-Maschine oder als von-
Neumann-Architektur bekannt. Wie weitsichtig und visionär sein Konzept war, wird daran
deutlich, dass auch aktuellen Computern noch diese Architektur zugrunde liegt.

Eine Von-Neumann-Maschine weist die folgenden wichtigen Merkmale auf:

1. Ein programmgesteuerter Rechner besteht aus


a. zentraler Recheneinheit (CPU = Central Processing Unit) mit
 einer ALU (Arithmetical Logical Unit) und
 einer Steuereinheit
b. Speicher
c. Ein- und Ausgabe-Einheiten und
d. den internen Datenwegen (Busse)
2. Die Zahlen werden im Rechner binär dargestellt.
3. Die Struktur des Rechners ist unabhängig von dem zu bearbeitenden Problem
(Universalrechner). Die verschiedenen Aufgaben werden durch entsprechende
Programme gelöst.
4. Programme und von diesen benötigte Daten werden in einem gemeinsamen Speicher
abgelegt. Die Speicherplätze sind gleich lang und werden über Adressen einzeln
angesprochen.
5. Befehle geben nur die Speicheradresse an, wo die Daten abgelegt sind, und nicht die
Daten selbst.
Die bedeutendste Neuerung in der damaligen Zeit war von Neumanns Idee, das Programm
und die Daten zuerst in denselben Speicher zu laden und dann auszuführen. Bis dahin war das
Programm noch hardwaremäßig verschaltet oder wurde über Lochstreifen schrittweise
eingelesen und sofort (streng sequentiell) bearbeitet. Nun war es möglich:

1. Sprünge einzuführen, sowohl auf vorhergehende wie spätere Programmsequenzen,


und
2. Programmcode während des Programmablaufes zu modifizieren (allerdings eine sehr
riskante, fehleranfällige Möglichkeit!).

Von Neumann erreicht also mit seinem Konzept, dass der Rechner selbstständig logische
Entscheidungen treffen kann. Damit ist der Übergang vom starren Programmablauf zur
flexiblen Programmsteuerung oder, anders ausgedrückt, von der Rechenmaschine zur
Datenverarbeitungsanlage vollzogen.

Nachteile der von-Neumann-Architektur


Die von Neumann Architektur hat jedoch einige Nachteile:

1. Im Speicher lassen sich Befehle und Daten anhand des Bitmusters nicht unterscheiden.
2. Im Speicher lassen sich variable und konstante Daten nicht unterscheiden.
3. Bei falscher Adressierung können Speicherinhalte verändert werden, die nicht
geändert werden dürfen, wie z.B. Befehle und Konstanten (Eine Bitänderung bei
einem Befehl erzeugt einen ganz anderen Befehl!)
4. Da Daten und Befehle im Speicher gehalten werden, wird die Verbindung und
Datenübertragung zwischen CPU und Speicher über den Systembus zum Von-
Neumann-Flaschenhals:
Jeglicher Datenverkehr von und zur CPU wird über den internen Bus abgewickelt,
dessen Transfergeschwindigkeit langsamer ist, als die Verarbeitungsgeschwindigkeit
der CPU.
Dieses Problem versucht man in modernen PC’s durch die Verwendung von
schnellem Cache-Speicher abzuschwächen, der meist in der CPU integriert ist.
Nemat

Julian

Jaromir

Lucia