[gesichtete Version] | [gesichtete Version] |
(Die Seite wurde neu angelegt: „<p><loop_figure title="Platzhalter-Bild" description="Bald erscheint hier der geplante Inhalt..." copyright="CC-BY" index=true show_copyright=true>Datei:Plat…“) |
Kwastg (Diskussion | Beiträge) Keine Bearbeitungszusammenfassung |
||
(18 dazwischenliegende Versionen von 2 Benutzern werden nicht angezeigt) | |||
Zeile 1: | Zeile 1: | ||
<p>< | <p> | ||
Das <loop_index id="5fa9787fdc0c1">Stackregister|Stack</loop_index>'''Stackregister''' befindet sich auf der CPU. Sein Wert beziffert eine bestimmte Speicherzelle im Hauptspeicher, den sogenannten '''<loop_index id="5fa9787fdc0c8">Top of Stack|Stack, Top of Stack</loop_index>Top of Stack''', also das '''<loop_index id="5fa9787fdc0cd">oberes Ende des Stacks|Stack, oberes Ende</loop_index>obere Ende des Stacks'''. | |||
</p> | |||
<br /> | <br /> | ||
< | == Push oder Pop auf die Datenstruktur == | ||
< | <p> | ||
</ | Ein Stack ist eine <loop_index id="5fa9787fdc0d0">Datenstruktur, Stack|Stack, Datenstruktur</loop_index>Datenstruktur, kann also Daten aufnehmen und wieder abgeben, wobei der Zugriff nur über die Befehle '''<loop_index id="5fa9787fdc0d3">PUSH, Stack|Stack, PUSH</loop_index>PUSH''' (Daten auf dem oberen Ende des Stacks ablegen) sowie '''<loop_index id="5fa9787fdc0d6">POP, Stack</loop_index><loop_index id="5fa978c378a92"> Stack, POP</loop_index>POP''' (Daten vom oberen Ende des Stacks entfernen) möglich ist. | ||
</p> | |||
<br /> | |||
== Stackregister anschaulich == | |||
<p> | |||
Anschaulich erklärt wird die Bedeutung des Stackregisters und die <loop_index id="5fa9787fdc0da">Arbeitsweise, Stack</loop_index><loop_index id="5fa978803b1c9">Stack, Arbeitsweise</loop_index>Arbeitsweise des Stacks an sich in dem folgenden Video: | |||
</p> | |||
<p> | |||
<loop_area icon="Video.png" icontext="Video"> | |||
<loop_media type="video" title="Stackregister und Arbeitsweise des Stacks (04:12)" description="http://youtu.be/NjSc5ovr5Tw" copyright="CC-BY" index=true show_copyright=true id="5fa9787fdc0dd">{{#ev:youtube|NjSc5ovr5Tw|700}}</loop_media> | |||
</loop_area> | |||
</p> | |||
<p> | |||
Das Ablegen oder Entfernen von Daten vom Stack kann sowohl aus einem laufenden Prozess heraus erfolgen, oder auch auf Anweisung des Steuerwerks. Letzteres bietet viele Vorteile, wie auf den kommenden Seiten noch zu sehen sein wird. | |||
</p> | |||
<br /> | |||
== Stackregister auf der CPU == | |||
<p> | |||
Das folgende Bild zeigt das Stackregister auf der CPU. In [[Gesamtbild eines Von-Neumann-Rechners|vorangegangenen Bildern zur CPU]] war an dieser Stelle das Register R4 angesiedelt. Man kann sich gerne vorstellen, dass das Register R4 weiterhin auf der CPU existiert, nur eben aus Platzgründen nicht mehr eingezeichnet ist. | |||
</p> | |||
<p> | |||
<loop_figure title="Stackregister auf der CPU" description="" copyright="CC-BY" index=true show_copyright=true id="5fa9787fdc0e0">[[Datei:Cpu10-stack.jpg|700px]]</loop_figure> | |||
</p> |
Das Stackregister befindet sich auf der CPU. Sein Wert beziffert eine bestimmte Speicherzelle im Hauptspeicher, den sogenannten Top of Stack, also das obere Ende des Stacks.
Ein Stack ist eine Datenstruktur, kann also Daten aufnehmen und wieder abgeben, wobei der Zugriff nur über die Befehle PUSH (Daten auf dem oberen Ende des Stacks ablegen) sowie POP (Daten vom oberen Ende des Stacks entfernen) möglich ist.
Anschaulich erklärt wird die Bedeutung des Stackregisters und die Arbeitsweise des Stacks an sich in dem folgenden Video:
Wenn Sie dieses Element öffnen, werden Inhalte von externen Dienstleistern geladen und dadurch Ihre IP-Adresse an diese übertragen.
Das Ablegen oder Entfernen von Daten vom Stack kann sowohl aus einem laufenden Prozess heraus erfolgen, oder auch auf Anweisung des Steuerwerks. Letzteres bietet viele Vorteile, wie auf den kommenden Seiten noch zu sehen sein wird.
Das folgende Bild zeigt das Stackregister auf der CPU. In vorangegangenen Bildern zur CPU war an dieser Stelle das Register R4 angesiedelt. Man kann sich gerne vorstellen, dass das Register R4 weiterhin auf der CPU existiert, nur eben aus Platzgründen nicht mehr eingezeichnet ist.