• 5.3 Dastur parametri-orqali uzatish usullari
  •  Parametrni amalga oshirish modellari




    Download 6,33 Mb.
    Pdf ko'rish
    bet119/194
    Sana20.02.2024
    Hajmi6,33 Mb.
    #159185
    1   ...   115   116   117   118   119   120   121   122   ...   194
    5.2 Parametrni amalga oshirish modellari 
    Dasturchilar tomonidan ishlab chiqilgan turli modellarning uchta asosiy 
    parametr uzatish usullari bor. Quyidagi qismda biz ularning nisbiy kuchli va ojiz 
    tomonlarini muhokama qilamiz. 
    5.2.1. Qiymat tomonidan uzatish
    Agar parametr qiymati bo‘yicha uzatiladigan bo‘lsa, haqiqiy parametr qiymati 
    ishlatiladi, keyin lokal parametr sifatida bajaradi shu tariqa rejimda semantik usul 
    amalga oshiriladi. 
    Ko‘pincha o‘rtacha qiymat odatda, nusxa tomonidan amalga oshiriladi, bu 
    yondashuv bilan yanada samarali bo‘ladi. Yozish, himoya amalga oshirish har doim 
    oddiy masala emas. Masalan navbatdagi parametr o‘tib bo‘lgan qism dastur boshqa 
    qism dastur uchun samarali. Bu nusxasini uzatishni amalga oshirishni yana bir 


    Dasturlash tillari va axborot-kommunikatsiya texnologiyalari 1-semestr
    227 
    sababidir. Biz 5.4 qismda ko‘ramiz, parametr qiymatlarini uzatish yo‘li bilan C ++ 
    uchun qulay va samarali usulni beradi. 
    Qiymat tomonidan bajarilishining afzalligi tez qiymat uzatish va foydalanish 
    vaqti tejaladi. 
    Qiymat tomonidan bajarilish usulini asosiy kamchiligi qo‘shimcha saqlash yoki 
    rasmiy parametr uchun zarur bo‘lgan nusxalarni ishlatadi va foydalanuvchini 
    chaqiradi. Bundan tashqari, haqiqiy parametrni saqlash hududga ko‘chiriladi mos 
    rasmiy parametr uchun. Saqlash va nusxa ko‘chirish operatsiyalari kabi ko‘plab 
    elementlar bilan bog‘liq qatorlar katta joy egallaydi. 
    5.3 Dastur parametri-orqali uzatish usullari 
    Ko‘plab mavjud tillarda, parametrlar bilan ishlash run-time stekdan 
    foydalanish natijasida sodir bo‘ladi. Bu run-time stak run-time system tomonidan 
    kiritiladi va ta’minlab beriladi. Bu stak dastur bajarilishini boshqaradi. Bu asosan 
    qism dasturlarda jarayonni va parametrlardan foydalanishni nazorat qiladi. Quyida 
    barcha parametrlarda stekdan foydalanilishiga ishonch hosil qilamiz. 
    Parametrlar qiymati bo‘yicha undan foydalanishda ularning qiymatlari stek 
    sohasiga ko‘chiriladi. Keyin bu soha mavjud parametrga xotira sifatida xizmat qiladi. 
    Parametrlarni ularni qaytargan natijasi bo‘yicha undan foydalanishda qiymat 
    bo‘yicha foydalanishga qaraganda teskari ish bajariladi. Qaytarilgan qiymat natijalari 
    stakda joylashadi va chaqirilgan qism dasturning boshidan oxirigacha chaqirilgan 
    dastur qismi takror foydalanish mumkin. 
    Natijani qiymat bo‘yicha uzatish (pass-by-value-result)da parametrlari 
    qurilishiga ko‘ra qiymat bo‘yicha uzatish (pass-by-value) va natija bo‘yicha uzatish 
    (pass-by-result) parametrlaridan olinadi. Bu parametrning stakda joylashuvi 
    chaqirish paytida inisializatsiya qilinadi (ya’ni kiritiladi) va u chaqirilgan quyi dasturda 
    lokal o‘zgaruvchiga o‘xshab foydalaniladi. 
    Tavsif bo‘yicha uzatish (pass-by-reference) parametrlaridan foydalanish eng 
    osoni hisoblanadi. Shunga qaramasdan mavjud parametr tipi, faqatgina uning 
    manzili stakda joylashadi. Literallar adresi esa stakda qo‘yiladi. Bunday vaziyatda 
    kompilyatsiya qiluvchi (dasturchi) chaqirilgan qism dastur ishini nazorat qilib turish 
    uchun dastur tuzishi kerak. Kod va uning bajarilishidagi natijani xotiradagi manzili 
    stakda joylashadi. Dasturchi tomonidan chaqirilgan dasturning parametrlari (literal 
    yoki ifoda) o‘zgarishidan himoya qila olishi kerak. 


    Dasturlash tillari va axborot-kommunikatsiya texnologiyalari 1-semestr
    228 
    Chaqirilgan qism dasturlar parametrlariga stak xotirasidan kirish bilvosita 
    adres orqali amalga oshiriladi. Yuqoridagi rasmdan ko‘rinadiki parametrlar orqali ish 
    bajarishda run-time stakdan foydalaniladi. sub qism dasturda main dan sub(w, x, y, 
    z) qism dasturi orqali chaqiriladi. Bu yerda w qiymat bo‘yicha uzatiladi, x natija 
    bo‘yicha uzatiladi, y natija qiymati bo‘yicha uzatiladi, z tavsif bo‘yicha bilan uzatiladi. 

    Download 6,33 Mb.
    1   ...   115   116   117   118   119   120   121   122   ...   194




    Download 6,33 Mb.
    Pdf ko'rish