Aytaylik, AX batareyasining boshlang'ich qiymati 874c. - Aytaylik, AX batareyasining boshlang'ich qiymati 874c.
- PUSH buyrug'i to'rt qadamda bajariladi:
- SP-dagi manzil 1 ga kamaytirilgan: (SP) <-- (SP) - 1.
- Eng ahamiyatli bayt 87 ushbu manzilga joylashtirilgan: ((SP)) <-- (AH).
- SP ning tarkibi yana 1 ga kamaytiriladi: (SP) <-- (SP) - 1.
- Hosil bo'lgan manzilga eng kam ahamiyatli bayt 4c yuklanadi: ((SP)) <-- (AL).
- POP buyrug'ining amali tasvirlangan jarayonga o'xshaydi, lekin teskari tartibda:
- (BL) <- (SP)),
- (SP) <- (SP) + 1,
- (BH) <- (SP)),
- (SP) <- (SP) + 1.
- Baytlar "eng muhim manzildagi eng muhim bayt" qoidasiga ko'ra stakanga itariladi. 7-rasmda PUSH AX buyrug'idan oldin va keyin bo'sh stakan ko'rsatilgan, 8-rasmda esa POP BX buyrug'idan keyin bo'sh stakan ko'rsatilgan.
Stakanning afzalligi shundaki, dasturchi o'zgaruvchi manzillarning mutlaq qiymatlari haqida qayg'urishga hojat yo'q, ammo bunda ham xavf bor, agar dasturchining beparvo harakatlari tufayli stakan ko'rsatkichining hozirgi tarkibi yo'qolsa, u holda kompyuterning ishlashi kutilmagan holga keladi va bunday hollarda aytilganidek, "muzlaydi". Programmalargʻa, stamysqa paydalanylgʻa: - Stakanning afzalligi shundaki, dasturchi o'zgaruvchi manzillarning mutlaq qiymatlari haqida qayg'urishga hojat yo'q, ammo bunda ham xavf bor, agar dasturchining beparvo harakatlari tufayli stakan ko'rsatkichining hozirgi tarkibi yo'qolsa, u holda kompyuterning ishlashi kutilmagan holga keladi va bunday hollarda aytilganidek, "muzlaydi". Programmalargʻa, stamysqa paydalanylgʻa:
- 1) yig'uvchi buyruqlar CALL va RET (IRET) bilan subroutinesdan qaytish manzilini saqlash va olish,
- 2) lokal o'zgaruvchilarni saqlash,
- 3) haqiqiy parametrlarni subroutines (yuqori darajadagi tillardan tarjimonlar) ga uzatish,
- 4) fond dasturi registrlari tarkibini to'xtatilganda vaqtincha saqlash.
Do'stlaringiz bilan baham: |