Bajardi: Ahrorov Habibullo
Tekshirdi: Saydazimov Javlonbek
6-amali ish Ishdan maqsad: Simulyator ekranida ism familyangizni ko'rsating. Matn rangi - Yashil.
Ushbu dastur ekranda belgilarni ko'rsatish uchun mo'ljallangan.
1. Dasturning algoritmi. Biz belgilarni sikl yordamida chiqarishimiz mumkin, bu bajarilish vaqtini tezlashtiradi va kodni kamaytiradi.
Avval displeyda ko'rsatilgan belgilar sonini hisoblab chiqamiz. "Mirvohidov Mirtohir" = 19 ← 13h
Belgilar jadvalidan foydalanib, birinchi navbatda, 0x2000 manzilidan boshlab, belgilar kodlarini to'ldiring.
Kod boshlanishi: Keling, birinchi belgining manzilini darhol aniqlaylik. Buning uchun biz LXI B buyrug'idan foydalanamiz - u "B, C" juftlashtirilgan registriga yozadi. Birinchi registrning manzili 0x2000. Keyin MVI D buyrug'i yordamida "D" registriga belgilar sonini yozamiz. Keling, "0Eh" ni yozamiz
Tsiklning boshlanishi. MVI A buyrug'i yordamida belgining rang kodini akkumulyatorga o'rnatamiz.Mening holimda "25". Uni OUT N buyrug'i yordamida displeyga yuboramiz va port raqamini = 00 belgilaymiz. Endi biz akkumulyatorga belgilar kodini yozamiz - u "B, C" juftlashtirilgan registrida joylashgan, biz LDAX B buyrug'idan foydalanamiz. OUT N buyrug'i yordamida uni displeyga yuboring va port raqamini = 00 ko'rsating. INX B oshirish buyrug'i yordamida "B, C" juftlangan registridagi manzil qiymatini oshiramiz. Keyin DCR L buyrug'i yordamida L registridagi qolgan belgilar sonining qiymatini kamaytiramiz. Biz sikl uchun shartni JNZ buyrug'i yordamida o'rnatamiz - ya'ni L registridagi qolgan belgilar sonining qiymati nolga teng bo'lgunga qadar sikl belgilangan manzildan ishlaydi. JNZ 0500 (tsikl boshlash manzili 0x0005).
Z bayrog'i yonishi bilan sikl tugaydi va keyingi HLT buyrug'i ishga tushadi.
Dastur.