STEKKA HAYOTDAN MISOLLAR.
Zamonaviy kompyuterlarda stek quyidagi hollar uchun qo’llaniladi:
• lokal o’zgaruvchilarni joylashtirish;
• protsedura yoki funktsiyalarning parametrlarini joylashtirish;
• qaytish adreslarini saqlashda (protseduradan qaysidir adresga qaytishda);
• ma’lumotlarni vaqtinchalik saqlashda, asosan Assembler dasturlash tilida.
Stek uchun xotiraning cheklangan sohasi ajratiladi. Protseduraning har bir qayta chaqirilishida stekka yangi element qo’shiladi (parametrlar, lokal o’zgaruvchilar, qaytish adreslari). Shuning uchun ham protseduralarni aralash (tarkibli) chaqirish natijasida stek to’lib ketadi. Stekning to’lib ketishi rekursiv holatlarda juda xavfli hisoblanadi, ya’ni aynan protsedura yoki fnuktsiyani o’zini yoki tarkibini qayta chaqirish holatida yuz berishi mumkin. Agar tarkibli funktsiyani qayta chaqirish natijasida stek to’lib ketishi yuz bersa, dasturdagi rekursiya cheksiz bo’lib qolishi (tugallanmaydi) va xatolikka olib kelishi mumkin.
Dostları ilə paylaş: |