<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="de">
	<id>https://wiki-de.moshellshocker.dns64.de/index.php?action=history&amp;feed=atom&amp;title=Von-Neumann-Zyklus</id>
	<title>Von-Neumann-Zyklus - Versionsgeschichte</title>
	<link rel="self" type="application/atom+xml" href="https://wiki-de.moshellshocker.dns64.de/index.php?action=history&amp;feed=atom&amp;title=Von-Neumann-Zyklus"/>
	<link rel="alternate" type="text/html" href="https://wiki-de.moshellshocker.dns64.de/index.php?title=Von-Neumann-Zyklus&amp;action=history"/>
	<updated>2026-06-12T09:21:43Z</updated>
	<subtitle>Versionsgeschichte dieser Seite in Wikipedia (Deutsch) – Lokale Kopie</subtitle>
	<generator>MediaWiki 1.43.8</generator>
	<entry>
		<id>https://wiki-de.moshellshocker.dns64.de/index.php?title=Von-Neumann-Zyklus&amp;diff=65044&amp;oldid=prev</id>
		<title>imported&gt;SchlurcherBot: Bot: http → https</title>
		<link rel="alternate" type="text/html" href="https://wiki-de.moshellshocker.dns64.de/index.php?title=Von-Neumann-Zyklus&amp;diff=65044&amp;oldid=prev"/>
		<updated>2025-09-22T23:37:29Z</updated>

		<summary type="html">&lt;p&gt;Bot: http → https&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Neue Seite&lt;/b&gt;&lt;/p&gt;&lt;div&gt;{{Redundanztext&lt;br /&gt;
|3=Befehlszyklus&lt;br /&gt;
|4=Von-Neumann-Zyklus&lt;br /&gt;
|2=April 2025|1=[[Spezial:Beiträge/141.76.8.148|141.76.8.148]] 15:46, 9. Apr. 2025 (CEST)}}&lt;br /&gt;
&lt;br /&gt;
Der &amp;#039;&amp;#039;&amp;#039;Von-Neumann-Zyklus&amp;#039;&amp;#039;&amp;#039; bezeichnet in der [[Technische Informatik|Technischen Informatik]] einen Prozess bei der Befehlsverarbeitung in einem klassischen [[Von-Neumann-Architektur|Von-Neumann-Rechner]].&lt;br /&gt;
&lt;br /&gt;
Moderne Mikroprozessoren verwenden heutzutage jedoch getrennte [[Cache]]s für Daten und Befehle und können deshalb als modifizierte [[Harvard-Architektur|Harvard-Prozessoren]] oder als Fast-Von-Neumann-Prozessoren bezeichnet werden, weshalb sie intern kaum noch etwas mit dem klassischen Von-Neumann-Zyklus gemein haben.&lt;br /&gt;
&lt;br /&gt;
== Die Teilschritte ==&lt;br /&gt;
[[Datei:Von-neumann-cpu.png|mini|Von-Neumann-Zyklus]]&lt;br /&gt;
Der Zyklus besteht aus fünf Teilschritten. Dabei kann ein Teilschritt mehrere [[Taktsignal|Takte]] dauern. Nach dem Beenden des Zyklus beginnt dieser wieder von vorn und ein weiterer Befehl wird abgearbeitet.&lt;br /&gt;
# FETCH – &amp;#039;&amp;#039;Befehlsabruf&amp;#039;&amp;#039;: Aus dem Speicher wird der nächste zu bearbeitende Befehl entsprechend der Adresse im Befehlszähler in das [[Register (Computer)|Befehlsregister]] geladen und der Befehlszähler wird um die Länge des Befehls erhöht.&lt;br /&gt;
# DECODE – &amp;#039;&amp;#039;Dekodierung&amp;#039;&amp;#039;: Der Befehl wird durch das Steuerwerk in Schaltinstruktionen für das Rechenwerk aufgelöst.&lt;br /&gt;
# FETCH OPERANDS – &amp;#039;&amp;#039;Operandenabruf&amp;#039;&amp;#039;: Aus dem Speicher werden nun die Operanden geholt. Das sind die Werte, die durch den Befehl verändert werden sollen oder die als Parameter verwendet werden.&lt;br /&gt;
# EXECUTE – &amp;#039;&amp;#039;Befehlsausführung&amp;#039;&amp;#039;: Eine arithmetische oder logische Operation wird vom Rechenwerk ausgeführt. Bei [[Sprungbefehl]]en und erfüllter Sprungbedingung wird an dieser Stelle der Befehlszähler verändert.&lt;br /&gt;
# WRITE BACK – &amp;#039;&amp;#039;Rückschreiben des Resultats&amp;#039;&amp;#039;: Sofern notwendig, wird das Ergebnis der Berechnung in den Speicher zurückgeschrieben.&lt;br /&gt;
&lt;br /&gt;
Die letzten drei Phasen des Von-Neumann-Zyklus müssen nicht bei jeder Befehlsart alle ausgeführt werden. Viele arithmetisch-logische Befehle der aktuellen CPUs schreiben tatsächlich ihr Ergebnis nicht in den Hauptspeicher (HS) zurück. Das macht später ein getrennter Speicherbefehl, bei dem nur die WriteBack-Phase interessiert und deshalb der Operandenabruf fehlt und die Executephase „verkümmert“ ist. Andererseits wird bei Mehradressmaschinen das Ergebnis normalerweise sofort in den HS geschrieben. Aber auch alle modernen Prozessoren besitzen Befehle, die ihr Ergebnis sofort wieder in den HS schreiben, beispielsweise der auf einen Speicherplatz bezogene Inkrement-Befehl oder der Exchange-Befehl. Das ist weder selten noch wird dafür spezielle Hardware benötigt. Um eine zusätzliche Adressangabe im Befehl zu sparen, wird das Resultat auf den gleichen Platz eines Operanden „zurückgeschrieben“ (write back).&lt;br /&gt;
&lt;br /&gt;
Moderne [[Hauptprozessor|Zentralprozessoren]] haben Taktfrequenzen von ca. 2 bis 6 GHz&amp;lt;ref&amp;gt;{{Internetquelle |url=https://www.intel.de/content/www/de/de/products/sku/237504/intel-core-i9-processor-14900ks-36m-cache-up-to-6-20-ghz/specifications.html |titel=Intel® Core™ i9 Prozessor 14900KS (36 MB Cache, bis zu 6,20 GHz) – Produktspezifikationen |sprache=de |abruf=2024-12-20}}&amp;lt;/ref&amp;gt;. Pro Takt werden bei aktuellen Prozessoren&lt;br /&gt;
* mehrere dieser oben genannten Teilschritte [[Parallele Programmierung|parallel]] (gleichzeitig) durch so genanntes [[Pipeline (Prozessor)|Pipelining]] ausgeführt,&lt;br /&gt;
* jeder Teilschritt wird im Allgemeinen pro Takt auch noch mehrfach ausgeführt. Bei der Befehlsausführung nennt man das Ports. Beispielsweise kann die Haswell-CPU bis zu 8 neue Befehle pro Takt neu anfangen, deren Ausführungszeit meist zwischen 1 und 5 Takten liegen, so dass sich bis zu 40 Maschinenanweisungen in der EXECUTE-Phase befinden können.&lt;br /&gt;
Als weitere leistungssteigernde Merkmale kommen hinzu:&lt;br /&gt;
* [[SIMD]]-Befehle&lt;br /&gt;
* Mehrere Kerne&lt;br /&gt;
&lt;br /&gt;
== FETCH ==&lt;br /&gt;
In das Befehlsregister, das zusammen mit [[Steuerwerk|Steuer-]] und [[Arithmetisch-logische Einheit|Rechenwerk]] (arithmetisch-logische Einheit, ALU) den [[Hauptprozessor]] (CPU) darstellt, wird aus [[Random Access Memory|RAM]]- oder [[Festwertspeicher|ROM]]-Speicher der nächste zu bearbeitende Befehl geladen. Anschließend wird der Befehlszähler (der {{lang|en|&amp;#039;&amp;#039;Instruction Pointer&amp;#039;&amp;#039;}}) erhöht, so dass er auf die nächste Speicherstelle zeigt. Diese Erhöhung ist schon hier notwendig, damit ein Sprungbefehl mit „Rückkehrabsicht“ (Unterprogrammsprung) die Adresse des Folgebefehls vor dem Sprung sichern kann.&lt;br /&gt;
&lt;br /&gt;
Prozessoren können oft mehrere Befehle aus dem Speicher in einen Zwischenspeicher (Prefetch-Registerblock) laden, während der aktuelle Befehl noch ausgeführt wird. Dieses Verfahren wird als {{lang|en|&amp;#039;&amp;#039;OpCode [[Prefetching]]&amp;#039;&amp;#039;}} (dt. &amp;#039;&amp;#039;[[Operationscode]]-Vorabruf&amp;#039;&amp;#039;) bezeichnet.&lt;br /&gt;
&lt;br /&gt;
#Vorteil: Deutliche Steigerung der Verarbeitungsgeschwindigkeit, weil die Wirkung des [[Von-Neumann-Architektur#Von-Neumann-Flaschenhals|Von-Neumann-Flaschenhalses]] reduziert wird.&lt;br /&gt;
#Nachteil: Bei Programmverzweigungen müssen die „unnütz“ geladenen Befehle evtl. wieder verworfen werden.&lt;br /&gt;
&lt;br /&gt;
== Weblinks ==&lt;br /&gt;
* [https://www.hd.id.ethz.ch/FK/uRISCy.html μRISCy] – [[RISC]]-Simulationsrechner für Vertiefungsübungen&lt;br /&gt;
* [http://www.viktorianer.de/info/mops.html MOPS] ist ein Modellrechner, der den Von-Neumann-Zyklus anschaulich darstellt&lt;br /&gt;
* [http://sourceforge.net/projects/johnnysimulator/ JOHNNY] ist ein OpenSource-Simulator, der den Von-Neumann-Zyklus anschaulich darstellt.&lt;br /&gt;
&lt;br /&gt;
== Einzelnachweise ==&lt;br /&gt;
&amp;lt;references /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Kategorie:Rechnerarchitektur]]&lt;br /&gt;
[[Kategorie:Von-Neumann-Rechner]]&lt;br /&gt;
[[Kategorie:John von Neumann als Namensgeber]]&lt;/div&gt;</summary>
		<author><name>imported&gt;SchlurcherBot</name></author>
	</entry>
</feed>