Heim  >  Artikel  >  Was ist der Stapel in einem Computer?

Was ist der Stapel in einem Computer?

藏色散人
藏色散人Original
2020-09-28 13:10:2113757Durchsuche

Der Stapel in einem Computer wird auch als Stapel bezeichnet. Es handelt sich um eine lineare Tabelle, die nur Einfügungs- und Löschvorgänge am Ende der Tabelle ausführt Relativ gesehen wird das andere Ende als das Ende des Stapels bezeichnet. Das Einfügen eines neuen Elements in einen Stapel wird auch als „Schieben“ oder „Schieben“ bezeichnet oberstes Element des Stapels, wodurch es zum neuen obersten Element des Stapels wird.

Was ist der Stapel in einem Computer?

Empfehlung: „Programmiervideo

Stack, auch Stack genannt, ist eine lineare Tabelle mit begrenzten Operationen. Eine lineare Tabelle, die Einfüge- und Löschvorgänge nur auf das Ende der Tabelle beschränkt. Dieses Ende wird als Oberseite des Stapels bezeichnet, das andere Ende als Unterseite. Das Einfügen eines neuen Elements in einen Stapel wird auch als Schieben, Schieben oder Schieben bezeichnet. Dabei wird das neue Element auf das oberste Element des Stapels gelegt, wodurch es zu einem neuen obersten Element wird Pushing aus dem Stapel, wodurch das oberste Element des Stapels gelöscht wird und die angrenzenden Elemente zum neuen obersten Element des Stapels werden.

Grundlegende Konzepte

Um dieses Konzept zu verstehen, müssen Sie zunächst die ursprüngliche Bedeutung von „Stapel“ verstehen, damit Sie das Wesentliche erfassen können. „Stapel“ bezieht sich auf einen Ort zur Lagerung von Waren oder zur Unterbringung von Passagieren, der auf Lager und Umsteigestationen erweitert werden kann. Daher bezieht er sich bei der Einführung in den Computerbereich auf den Ort, an dem Daten vorübergehend gespeichert werden, daher gibt es Begriffe wie Betreten und Verlassen des Stapels.

Erstens sind das Lesen und Einfügen von Dateninhalten in das System oder den Datenstrukturstapel (Push und Pop) zwei verschiedene Dinge! Beim Pushen werden Daten hinzugefügt, beim Poppen werden Daten gelöscht. Diese Vorgänge können nur von oben im Stapel ausgeführt werden, d Es gibt keine Schnittstellenbeschränkung. Viele Leute verstehen dieses Konzept falsch und sind verwirrt über den Stapel. Der Systemstapel dient auch als Medienbereich für die komponentenübergreifende Interaktion in der Computerarchitektur, dh als Kommunikationskanal zwischen der CPU und dem Speicher. Die CPU liest nur linear Ausführungsanweisungen aus dem vom System für die Anwendung angegebenen Stapeleintrag Das Programm, das wir schreiben, verwenden ein Bildwort, um es zu beschreiben: Pipeline (Pipeline, Fließband). Einzelheiten zur internen Interaktion der CPU finden Sie in der Einführung in die Konzepte EU und BIU.

Als Datenstruktur ist ein Stapel eine spezielle lineare Liste, die nur an einem Ende Einfüge- und Löschvorgänge ausführen kann. Es speichert Daten nach dem First-In-Last-Out-Prinzip. Die Daten, die zuerst eingegeben werden, werden an den unteren Rand des Stapels verschoben, und die letzten Daten befinden sich oben im Stapel von der Spitze des Stapels (die letzten Daten werden zuerst ausgelesen). Der Stapel verfügt über eine Speicherfunktion. Bei Einfüge- und Löschvorgängen auf dem Stapel ist es nicht erforderlich, den unteren Zeiger des Stapels zu ändern.

Ein Stapel ist eine spezielle lineare Liste, die Einfüge- und Löschvorgänge am selben Ende ermöglicht. Das Ende, das Einfüge- und Löschvorgänge ermöglicht, wird als oberes Ende des Stapels bezeichnet, und das andere Ende ist das untere Ende des Stapels, und das obere Ende des Stapels ist schwebend , man spricht von einem leeren Stapel. Das Einfügen wird im Allgemeinen als PUSH bezeichnet, das Löschen als Popping (POP). Der Stapel wird auch als First-In-Last-Out-Liste bezeichnet.

Der Stapel kann zum Speichern von Haltepunkten verwendet werden, wenn Funktionen aufgerufen werden. Der Stapel wird bei der Rekursion verwendet!

Die obige Definition wird in der klassischen Informatik erklärt.

In Computersystemen ist der Stack ein dynamischer Speicherbereich mit den oben genannten Attributen. Das Programm kann Daten auf den Stapel verschieben oder Daten von der Oberseite des Stapels entfernen. Bei i386-Maschinen befindet sich die Spitze des Stapels bei einem Register namens esp. Die Push-Operation führt dazu, dass die Adresse oben im Stapel abnimmt, und die Pop-Operation bewirkt, dass die Adresse oben im Stapel zunimmt.

Der Stack spielt eine wichtige Rolle beim Ablauf des Programms. Das Wichtigste ist, dass der Stapel die erforderlichen Wartungsinformationen speichert, wenn eine Funktion aufgerufen wird. Dies wird häufig als Stapelrahmen oder Aktivitätsdatensatz bezeichnet. Stapelrahmen enthalten im Allgemeinen die folgenden Informationsaspekte:

1. Die Rücksprungadresse und Parameter der Funktion

2. Temporäre Variablen: Einschließlich nicht statischer lokaler Funktionsvariablen und anderer vom Compiler automatisch generierter temporärer Variablen.

Was ist der Stapel in einem Computer?

Das obige ist der detaillierte Inhalt vonWas ist der Stapel in einem Computer?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn