Πίσω

Παράδειγμα

Μία από τις λειτουργίες της στοίβας, είναι το να «κρατάει» στοιχεία τα οποία βρίσκονται σε διαδοχικές διευθύνσεις, και να εκτελεί αριθμητικές πράξεις σε αυτά τα δύο στοιχεία. Μία συχνή αριθμητική πράξη στις στοίβες είναι αυτή που εξάγει τα δύο πρώτα στοιχεία από τη στοίβα (το στοιχείο κορυφής και το αμέσως προηγούμενο), εκτελεί πρόσθεση (αφαίρεση, πολλαπλασιασμό, κλπ.) σε αυτά και στη συνέχεια ωθεί το αποτέλεσμα στην κορυφή της στοίβας. Το αποτέλεσμα της πράξης ADD, η οποία εκτελείται στη στοίβα του σχήματος 2.1.3.(α), απεικονίζεται στο σχήμα 2.1.3.(β). Τα βήματα που ακολουθούνται για την εκτέλεση της πράξης ADD στη στοίβα, είναι:

ADD

* Eξαγωγή του στοιχείου κορυφής που βρίσκεται στη διεύθυνση που δείχνει ο δείκτης στοίβας (200), δηλαδή του στοιχείου με τιμή 86.
* Mείωση της τιμής του δείκτη στοίβας κατά 4, έτσι ώστε να δείχνει το προηγούμενο στοιχείο που είναι το -8 και βρίσκεται στη διεύθυνση 196.
* Εξαγωγή του στοιχείου κορυφής που βρίσκεται στη διεύθυνση που δείχνει ο δείκτης στοίβας (196), δηλαδή του στοιχείου με τιμή 86.
* Μείωση της τιμής του δείκτη στοίβας κατά 4, έτσι ώστε να δείχνει το προηγούμενο στοιχείο που είναι 102 και βρίσκεται στη διεύθυνση 192.
* Πρόσθεση των τιμών των δύο στοιχείων (το 86 και το -8).
* Αύξηση της τιμής του δείκτη στοίβας κατά 4, έτσι ώστε να δείχνει το στη διεύθυνση 196.
* Ώθηση του αποτελέσματος, το οποίο είναι το 78, στη θέση που δείχνει ο δείκτης στοίβας, δηλαδή στη διεύθυνση 196.


Σχήμα 2.1.3 – Η αρχική στοίβα (α) και η στοίβα μετά την εκτέλεση της πράξης ADD (β).