Το Στέκι των Πληροφορικών

Γενικό Λύκειο => Γ΄ Λυκείου => Μήνυμα ξεκίνησε από: Kalli στις 03 Μαΐου 2007, 12:02:51 ΜΜ

Τίτλος: Η χρήση στοίβας στην κλήση διαδικασιών
Αποστολή από: Kalli στις 03 Μαΐου 2007, 12:02:51 ΜΜ
Μπορεί κάποιος να μου εξηγήσει πως υλοποιείται?Κάπως πιο κατανοητά από το βιβλίο
Τίτλος: Απ: Η χρήση στοίβας στην κλήση διαδικασιών
Αποστολή από: petrosp13 στις 03 Μαΐου 2007, 01:29:10 ΜΜ
Το όλο νόημα είναι το εξής:
Όταν το κύριο πρόγραμμα καλεί στον κώδικα του ένα υποπρόγραμμα, που και αυτό με τη σειρά του καλεί ένα άλλο, και εκείνο ένα άλλο κοκ., ο μεταγλωττιστής της γλώσσας οφείλει να "θυμάται" την σειρά με την οποία κλήθηκαν τα υποπρογράμματα, ούτως ώστε, όταν τελειώσει το καθένα από αυτά, να γυρίζει σε εκείνο που το κάλεσε και ακριβώς σε εκείνο το σημείο που κλήθηκε.
Αυτό υλοποιείται με χρήση στοίβας. Αρχικά, στην στοίβα ωθείται το κύριο πρόγραμμα, από πάνω το υποπρόγραμμα που κάλεσε αυτό, από πάνω το υποπρόγραμμα που κάλεσε το τελευταίο κοκ.. Όταν το υποπρόγραμμα που κλήθηκε τελευταίο (και είναι στην κορυφή της στοίβας) ολοκληρώσει , απωθείται από την στοίβα και η ροή της εκτέλεσης μεταφέρεται στο επόμενο υποπρόγραμμα της στοίβας. Όταν και αυτό ολοκληρώσει, αφαιρείται από την στοίβα κοκ.
Τελικά, ο έλεγχος θα μεταφερθεί στο τελευταίο στοιχείο της στοίβας που είναι πάντα το κύριο πρόγραμμα και εκεί θα ολοκληρωθεί η εκτέλεση.

Καλύτερα τώρα;;
Τίτλος: Απ: Η χρήση στοίβας στην κλήση διαδικασιών
Αποστολή από: Kalli στις 03 Μαΐου 2007, 07:14:05 ΜΜ
Ευχαριστώ πολύ!Να'σαι καλά!