Versions-History von Von Neumann Architekturmodell

Zum Begriff Von Neumann Architekturmodell

Änderung des Felds Beschreibung am Donnerstag, 25. Januar 2001, 23:00:
+Dem &uuml;berwiegenden Teil aller Rechner liegt nach wie vor ein Maschinenmodell zugrunde, <br>das vom Mathematiker J. von Neumann bereits in den f&uuml;nfziger Jahren entworfen wurde. <br>Seine wesentlichen Komponenten sind: <br><ul><li>Prozessoren, die <a href="./?w=1&q=760">Programme</a> verarbeiten und aus einem Leit- und einem Rechenwerk bestehen; <br><li>Speicher f&uuml;r <a href="./?w=1&q=760">Programme</a> und Daten; <br><li>Ein- und Ausgabewerke f&uuml;r die Kommunikation mit der Umwelt. <br></ul> <br>Prozessoren werden auch als <a href="./?w=1&q=151">CPUs</a> (engl.:central processing unit) bezeichnet, und Leitwerke hei&szlig;en manchmal auch Steuerwerke. <br>Rechenwerke sind weiter als <a href="./?w=1&q=43">ALUs</a> ,(eng.:arithmetic logical unit) oder Operationswerke bekannt, und statt <a href="./?w=1&q=209">E/A</a>-Werken bzw. Ger&auml;ten <br>spricht man manchmal auch von der Peripherie. <br> <br>Technisch gesehen handelt es sich bei den einzelnen Einheiten und dem Gesamtsystem um Schaltwerke. Die <a href="./?w=1&q=151">CPU</a> sowie die meisten <br>anderen Komponenten sind dabei als synchrone Schaltwerke ausgef&uuml;hrt, weil diese leichter zu gr&ouml;&szlig;eren Schaltwerken zusammenzusetzen sind. <br> <br>Die zentrale Einheit des von Neumann-Maschinenmodells ist der <a href="./?w=1&q=151">Prozessor</a>. Wie bei komplexeren Schaltwerken &uuml;blich, ist er aus <br>zwei kooperierenden Teilschaltwerken aufgebaut, wobei die verarbeitende Einheit, das Rechenwerk, durch das Leitwerk gesteuert wird. <br>Die Aufgabe des Rechenwerks ist die Durchf&uuml;hrung arithmetischer und logischer Operationen. <br> <br>Charakteristisch f&uuml;r von Neumann-Rechner sind neben der schon angegebenen Gliederung die folgenden Prinzipien: <br><ul><li>Der Speicher besteht aus einzelnen, gleich gro&szlig;en Speicherzellen, welche fortlaufend adressiert sind. <br><li>Der Inhalt einer Speicherzelle wird &uuml;ber ihre <a href="./?w=1&q=28">Adresse</a> angesprochen. <br><li>Der Rechner verarbeitet Gruppen von <a href="./?w=1&q=99">Bits</a> fester L&auml;nge. <br><li>Programme und Daten liegen in einem einheitlichen Speicher. <br><li>Zur Bearbeitung von Aufgaben werden <a href="./?w=1&q=760">Programme</a> eingegeben und im Speicher abgelegt. <br><li>Programme bestehen aus einzelnen <a href="./?w=1&q=86">Befehlen</a>, welche der <a href="./?w=1&q=151">Prozessor</a> sequentiell abarbeitet. <br><li>Die Verarbeitung von <a href="./?w=1&q=86">Befehlen</a> geschieht normalerweise in der Reihenfolge ihrer Ablage im Speicher. <br><li>Die normale Verarbeitungsreihenfolge der <a href="./?w=1&q=86">Befehle</a> kann durch bedingte und unbedingte Sprungbefehle ver&auml;ndert werden. <br></ul> <br>Hierdurch sind Verzweigungen im Ablauf des <a href="./?w=1&q=760">Programms</a> in Abh&auml;ngigkeit von Daten m&ouml;glich. <br> <br>Das hervorstechende Merkmal ist die Steuerung des <a href="./?w=1&q=151">Prozessors</a> durch im Speicher abgelegte <a href="./?w=1&q=760">Programme</a>. Diese Speicherprogrammierbarkeit erlaubt es, den <a href="./?w=1&q=151">Prozessor</a> "universell" f&uuml;r die <br>L&ouml;sung sehr unterschiedlicher Probleme anzuwenden, ohne die Struktur des Rechners zu ver&auml;ndern. <br> <br>Eine Konsequenz der Gleichbehandlung von Daten und <a href="./?w=1&q=760">Programmen</a> ist es, da&szlig; <a href="./?w=1&q=760">Programme</a> selbst als Eingabe- oder Ausgabedaten anderer <a href="./?w=1&q=760">Programme</a> auftreten k&ouml;nnen. In diesem Sinne ist auch <br>die Bezeichnung "Daten" an den Verbindungspfeilen von <a href="./?w=1&q=151">CPU</a> und den Ein-/Ausgabewerken in Bild 1.1 zu verstehen: zu den ein- bzw. ausgegebenen Daten geh&ouml;ren auch <a href="./?w=1&q=760">Programme</a>, die aber <br>durch den <a href="./?w=1&q=151">Prozessor</a> nicht direkt ausgef&uuml;hrt, sondern erst im Speicher abgelegt und dann ausgef&uuml;hrt werden. <br> <br>Im Prinzip ist es durch die Behandlung von Befehlskode als Daten sogar m&ouml;glich, den Kode des gerade laufenden Programmes zu ver&auml;ndern. Solch selbstmodifizierender Kode ist allerdings nur <br>sehr schwer auf seine Korrektheit zu &uuml;berpr&uuml;fen und gilt inzwischen als schlechter Programmierstil. Statt dessen benutzt man Programmverzweigungen, um den Ablauf des Programmes von den <br>Eingabedaten oder bestimmten Zwischenergebnissen abh&auml;ngig zu machen. Der gesamte potentiell ausf&uuml;hrbare Programmkode steht also bereits vor der eigentlichen Ausf&uuml;hrung fest und kann so <br>bereits auf bestimmte statische Eigenschaften hin &uuml;berpr&uuml;ft werden, wie z.B. ob alle vorkommenden <a href="./?w=1&q=757">Variablen</a> vorher deklariert wurden. <br> <br>Moderne Rechner weichen in einigen Punkten von den oben genannten Prinzipien ab. Dennoch folgt nach wie vor das Gros aller Rechner den <br>meisten dieser Prinzipien, so da&szlig; man sie als "von Neumann-Rechnerarchitekturen" bezeichnet.

SUCHE



 
 



AKTIONEN
Allgemein

Zufälliger Begriff

Begriff
Versions-History


WERBUNG

NEUIGKEITEN
%16.%11-%23.%11.%2024:
Neue Begriffe

13.6.2006:
Begriff-Schnellsuche: http://clexi.com/ram