test savollari
Eng keng tarqalgan algoritmni ayting tuzilmalar.
Tsiklik dasturlarning maqsadi va umumiy tuzilishi nimadan iborat?
Organish uchun qanday buyruqlardan foydalaniladi
novdalar va halqalar?
Shartsiz o`tish buyruqlarining maqsadi va bajarilishini aytib bering.
Shartli o`tish buyruqlarini belgilash va bajarish. 6. Shart kodlarini (bayroqlarni) ishlatish mexanizmini tavsiflang
shartli sakrash ko'rsatmalari.
102
Machine Translated by Google
ÿ5 laboratoriya
Subprogrammalarni tashkil qilish
Ishning maqsadi: pastki dasturlarni tashkil etish tamoyillarini o'rganish va o'tish parametrlari; chaqiruvchi dasturning subprogramma bilan o'zaro ta'sirini ta'minlovchi buyruqlarni o'zlashtirish.
Nazariy qism
Katta va murakkab dasturda ba'zi to'liq funktsiyalarni bajaradigan buyruqlar ketma-ketligini ajratib ko'rsatish mumkin.
(protseduralar). Agar bunday buyruqlar ketma-ketligi alohida modullar - subprogrammalar (routin, subprogramma) sifatida joylashtirilgan bo'lsa, u holda dasturda bu buyruqlar mos keladigan kichik dasturlarga qo'ng'iroqlar bilan almashtirilishi mumkin. Bunday modulli (strukturaviy) dasturlash quyidagi afzalliklarni beradi: ÿ butun dasturni disk raskadrovka qilish tezlashtirilgan va
soddalashtirilgan; universal funktsiyalarni amalga oshiradigan pastki dasturlar mumkin
boshqa dasturlarni ishlab chiqishda foydalanish; ÿ turli
dasturlash tillarida yozilgan dasturlarni tarjima qilgandan keyin olingan modullarni bitta dasturda birlashtirish mumkin.
Qo'ng'iroq qiluvchi dasturning pastki dastur bilan o'zaro ta'siri uchun quyidagi shartlar bajarilishi kerak:
Qo'ng'iroq qiluvchi dastur pozitsiyani bilishi kerak dasturning umumiy tuzilishidagi kichik dasturlar;
ÿ pastki dasturni chaqirish usullari aniqlangan bo'lishi kerak va undan qaytish; -
qo'ng'iroq qiluvchi dastur va pastki dastur o'rtasida ma'lumotlar almashinuvi usuli tanlanishi kerak.
Dasturning umumiy tuzilmasidagi kichik dasturning o'rni uning nomi bilan belgilanadi. Assembler quyi dasturi nomi tomonidan berilgan
ramziy yorliq, bajariladigan faylning boshlang'ich manzili pastki dastur qismlari.
Subprogrammani chaqirish boshqaruvni unga o'tkazishni nazarda tutadi. buyruqni bajarish kursi. Boshqaruvni o'tkazish dastur hisoblagichiga (ShK)
quyi dasturning boshlang'ich manzilini yuklash orqali amalga oshiriladi . Bunday holda, pastki dasturdan qaytish manzilining saqlanishini ta'minlash kerak, ya'ni. yo'riqnomadan keyingi ko'rsatma manzili
103
pastki dastur qo'ng'irog'i. Pastki dasturlardan qaytish manzillarini saqlash uchun stek ishlatiladi .
Stack - bu oxirgi kiruvchi birinchi chiquvchi xizmat intizomiga ega (LIFO: Last-In-First-Out) maxsus tashkil etilgan xotira katakchalari ketma- ketligi . Kirish paytida
yangi ma'lumotlar to'plami oldingi ma'lumotlar saqlanadi, lekin bo'ladi
vaqtincha mavjud emas ("pasaytirgan"). Stakdan tushirildi
("ko'tarish", "tashqariga surish") ma'lumotlarni teskari tartibda. Stack ham apparat, ham dasturiy ta'minotda amalga oshirilishi mumkin. Uskunalar to'plami (Hardware Stack) to'g'ridan-to'g'ri protsessorda maxsus registrlar to'plami sifatida bajariladi va qoida tariqasida kichik chuqurlikka ega. Dasturiy ta'minot stegi (Software Stack) operativ xotirada tashkil etilgan; chuqurligi hajmi va bilan belgilanadi
xotiradan foydalanish darajasi.
Keyingi bo'sh stek katakchasining manzili maxsus registrda joylashgan
- stek ko'rsatgichi SP (Stack Pointer). Ro'yxatdan o'tish paytida
stek raqami stek ko'rsatgichidagi manzil joylashgan joyga joylashtiriladi, shundan so'ng stek ko'rsatgichining mazmuni tomonidan kamayadi.
birlik ( 31-rasm, a). Stackdan o'qiyotganda, hujayraning tarkibi tarkibdan bir kattaroq manzilda olinadi.
stek ko'rsatkichi ( 31b-rasm). Shunday qilib, stekni yozish va o'qish paytida
undan stek ko'rsatkichining mazmuni o'zgartiriladi.
Qaytish manzillarini saqlash uchun stekdan foydalanish mexanizmi quyi dasturlarning tarkibi quyidagicha. Dasturda subprogramma qo'ng'iroq qilish buyrug'iga duch kelganda, tomonidan belgilangan xotira joyiga
stek ko'rsatkichi, qaytish manzili yoziladi; stek ko'rsatkichining qiymati kamayadi; pastki dasturning boshlang'ich manzili dastur hisoblagichiga yuklanadi. Boshlang'ich
manzil
b)
Guruch. 31. stekga yozish (a) va stekdan o‘qish (b) amallari:
***
– keyingi erkin stek katakchasi; manzil - manzil
Keyinchalik, pastki dasturning buyruqlari bajariladi. Qo'ng'iroq qiluvchi dasturga qaytish buyrug'i quyi dasturda uchrasa, stek ko'rsatkichining qiymati ortadi; stekda saqlangan qaytish manzili dastur hisoblagichiga yuklanadi (32-rasm). Pastki dasturlarda ishlash uchun stekdan foydalanish bir kichik dastur boshqasiga qo'ng'iroq qilish imkonini beradi, ya'ni. pastki dasturlarni joylashtirish imkoniyatini beradi. Subprogrammalarni joylashtirish chuqurligi cheklangan
stek hajmi.
Asosiy dastur
Do'stlaringiz bilan baham: |