Als «stack» getaggte Fragen

Eine LIFO-Datenstruktur (Last In, First Out).

6
Stapel- und Heapspeicher in Java
Wie ich verstehe, enthält der Stapelspeicher in Java Primitive und Methodenaufrufe, und der Heapspeicher wird zum Speichern von Objekten verwendet. Angenommen, ich habe eine Klasse class A { int a ; String b; //getters and setters } Wo wird das Primitiv ain der Klasse Aaufbewahrt? Warum gibt es überhaupt Heapspeicher? …

7
Warum hat der Aufrufstapel eine statische Maximalgröße?
Nachdem ich mit einigen Programmiersprachen gearbeitet habe, habe ich mich immer gefragt, warum der Thread-Stapel eine vordefinierte maximale Größe hat, anstatt sich automatisch nach Bedarf zu erweitern. Im Vergleich dazu sind bestimmte, in den meisten Programmiersprachen häufig vorkommende Strukturen (Listen, Maps usw.) so konzipiert, dass sie nach Bedarf wachsen, während …
46 stack 

6
Was bringt es, einen Stack mit zwei Warteschlangen zu implementieren?
Ich habe folgende Hausaufgabenfrage: Implementieren Sie die Stack-Methoden push (x) und pop () in zwei Warteschlangen. Das kommt mir merkwürdig vor, weil: Ein Stack ist eine (LIFO-) Warteschlange Ich verstehe nicht, warum Sie zwei Warteschlangen benötigen würden, um es zu implementieren Ich habe gesucht: GeeksForGeeks Paketüberfluss und fand ein paar …
34 java  stack 


3
Warum wächst der Stapel nach unten?
Ich gehe davon aus, dass es eine Geschichte gibt, aber warum wächst der Stapel nach unten? Es scheint mir, dass Pufferüberläufe viel schwerer auszunutzen wären, wenn der Stack nach oben wächst ...
31 cpu  stack 

1
Frame Pointer Erklärung
In der MIPS-Assembly gibt es ein Register für den Stapelzeiger und ein anderes Register für den Rahmenzeiger. Was ist der Rahmenzeiger und wozu dient er? Wie unterscheidet es sich vom Stapelzeiger?
28 assembly  stack 


4
Warum wird etwas auf den Stapel gelegt, das als "Push" bezeichnet wird?
Laut http://dictionary.reference.com drücken Verb (verwendet mit Objekt) mit Gewalt auf oder gegen ein Ding drücken, um es wegzubewegen. (etwas) auf eine bestimmte Art und Weise bewegen, indem man Kraft ausübt; schieben; fahren: etwas beiseite schieben; die Tür aufstoßen . zu bewirken oder zu vollbringen, indem man Hindernisse beiseite stößt: sich …

4
Wie viel Stapelverbrauch ist zu viel?
In letzter Zeit, als ich C oder C ++ geschrieben habe, werde ich alle meine Variablen auf dem Stapel deklarieren, nur weil es eine Option ist, im Gegensatz zu Java. Ich habe jedoch gehört, dass es eine schlechte Idee ist, große Dinge auf dem Stapel zu deklarieren. Warum genau ist …


4
Grundlegendes zum Stack-Frame eines Funktionsaufrufs in C / C ++?
Ich versuche zu verstehen, wie Stapelrahmen erstellt werden und welche Variablen (Parameter) in welcher Reihenfolge zum Stapeln verschoben werden. Einige Suchergebnisse haben gezeigt, dass der C / C ++ - Compiler basierend auf Operationen entscheidet, die innerhalb einer Funktion ausgeführt werden. Wenn die Funktion beispielsweise einen übergebenen int-Wert nur um …
19 c++  c  compiler  stack 

4
Wenn es keine Gesamtbetriebskosten gibt, wann müssen Sie sich Sorgen machen, den Stapel zu sprengen?
Jedes Mal, wenn über eine neue Programmiersprache diskutiert wird, die auf die JVM abzielt, werden unvermeidlich Dinge gesagt wie: "Die JVM unterstützt keine Tail-Call-Optimierung, daher sage ich viele explodierende Stacks voraus." Es gibt Tausende von Variationen zu diesem Thema. Jetzt weiß ich, dass einige Sprachen, wie zum Beispiel Clojure, ein …

5
Gibt es einen Nachteil bei der Zuweisung einer großen Menge des Stapels für ein einzelnes Array in einem eingebetteten System?
Normalerweise habe ich kein Problem damit, zu entscheiden, ob einige Daten global, statisch oder auf dem Stack sein müssen (hier keine dynamische Zuordnung, daher keine Verwendung des Heapspeichers). Ich habe auch ein paar Fragen / Antworten wie diese gelesen, aber meine Frage ist spezifischer, da sie im Vergleich zum Systemspeicher …

1
Was ist der Zweck der roten Zone?
Die rote Zone ist ein Bereich fester Größe im Speicher nach dem Stapelzeiger, der nicht "zugeordnet" wurde. Compiler generieren Assemblys, um in einfachen Blattfunktionen auf diesen Bereich zuzugreifen. Aber ich sehe keine wirklichen Vorteile für die rote Zone. Der Zugriff auf Speicher jenseits des Stapelzeigers ist sehr gefährlich und kann …
12 assembly  stack 


Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.