O‘ZBEKISTON RESPUBLIKASI
RAQAMLI TEXNOLOGIYALAR VAZIRLIGI
MUHAMMAD AL-XORAZMIY NOMIDAGI
TOSHKENT AXBOROT TEXNOLOGIYALARI UNIVERSITETI
QARSHI FILIALI
TELEKOMMUNIKATSIYA TEXNOLOGIYALARI FAKULTETI
2-BOSQICH RI-11-22 GURUHI TALABASINING
KOMPYUTERNI TASHKIL ETILISHI
FANIDAN
5-AMALIY ISHI
BAJARDI: BAXRIDDINOV RAMZIDDIN
TEKSHIRDI: ABDUVALIYEV ASROR
QARSHI-2024
Assembler tilida murakkab arifmetik amallarni bajarish
Assembler so'zi ingliz tilidan olingan bo'lib, yig'uvchi, jamlovchi ma'nolarini anglatadi. Assemblerda yoziladigan dasturlar hamma dasturlash tlllarida bo'lgani kabi, oddly matn sifatida matn muharirlari orqali yoziladi. Assembler berilgan matndagi assembler buyruqlarini mashina buyruqlariga o'giradi. Bu til quyi darajali til deb atalishining sababi shundaki, assembler tili mashina tiliga juda yaqin ko'rinishga ega. Undagi har bir vazifa, topshiriq, amal yoki buyruq aniq bir mashina darajasidagi buyruqqa to'g'ri keladi, ya'ni assemblerdagi har bir buyruq mos ravishda o'z yagona mashina kodiga ega.
Assembler tili kompyuterning barcha funktsional birliklarining operatsion tizim bilan o'zaro ta'sirini yaxshiroq tushunishga imkon beradi. Assembler tili - bu operatorlar va protsessor komandalari o'rtasida bir-birini yozishmalarga ega maxsus dasturiy tildir. Har bir protsessor turi yoki protsessorlarning butun oilasi uchun assembler tili mavjud, chunki assembler tili bo'yicha yo'riqnomalar mashina yo'riqnomasi tizimi bilan bir-birini yozishmalarga ega bo'lishi kerak va kompyuter arxitekturasiga muvofiq bo'lishi kerak. Ushbu ma’ruzada 16 bitli 8086-88 Intel protsessoriga oid buyruqlar ko'rsatmalarni o'z ichiga oladi. 8086-88 mikroprotsessorlari birinchi 640 KB (kilobayt) asosiy xotiraga (RAM) va 65536 baytlik kirish/chiqish manzil maydoniga ajratilgan 1 (MB) megabaytning asosiy manzil maydoni bilan ajralib turadi.
Assembler tilining manba kodini mashina ko'rsatmalariga o'zgartiradigan dastur Assembler dasturlari juda samarali bo'lishi mumkin. Dastur qobiliyatlari va qobiliyatlari teng bo'lgan dasturchilar tomonidan Assembler tilida ishlash yuqori darajadagi tilda yozilgan dasturdan ko'ra ixcham va tezroq dastur ishlab chiqaradi. Bu deyarli barcha kichik va o'rta dasturlar uchun amal qiladi. Assembler tili dasturi juda to'g'ri. Ushbu til dasturchining barcha apparat bilan bevosita ishlashiga imkon berganligi sababli, assembler dasturi boshqa dasturlarda mavjud bo'lmagan narsalarni bajarishi mumkin.
Assembler tilining asosiy kamchiliklari, kompyuterning bir turiga yoziladigan dasturni boshqa komputer turlarida ishlatish mumkin emas, chunki har bir kompyuter oilasi uchun boshqa assembler tili ishlatiladi. Agar yaratiladigan dastur turli xil kompyuterlarda ishlatilsa, u yuqori darajadagi tillarda ishlab chiqilishi kerak va u kompyuter arxitekrurasining xususiyatlarini dasturiy ta'minotdan foydalanish qulayligi va portativ kodni olish uchun yashirishi kerak.
Dasturlashtirish tili tasnifi
Ko'plab dasturlash tillari mavjud, biroq biz Assembler tiliga e'tibor qaratamiz.
Hozirgi vaqtda dasturchi Assemblerdan ancha sodda dasturlash tillarini qo'llashi mumkinligiga qaramasdan, Assembler bilimi va unda dasturlash qobiliyati hech qachon ortiq bo'lmaydi. Bu quyidagi dalillar bilan tasdiqlangan:
1. Boshqa dasturiy tillardan talablarni to'liq qondiradigan prilojeniyalar yozish har doim ham mumkin emas. Va ba'zi hollarda butunlay mumkin emas. Assembler dasturlash tilida siz har qanday dasturni yozishingiz mumkin.
2. Ba'zan yuqori darajali dasturlash tillari kerakli tezlikni ta'minlay olmaydi. Assemblerda yaratilgan dasturlar esa har doim tez.
3. Yuqori darajadagi tillarda yaratilgan dasturlarning hajmi Assemblerda yaratilgan dasturlarga qaraganda ancha katta.
4. Assembler tili sizga to'g'ridan-to'g'ri apparat bilan ishlash imkonini beradi, bu esa ba'zi hollarda dasturchiga afzallik va istalgan natijani beradi. Yuqori darajadagi tilda dastur apparat qurilmalari bilan yozma modul orqali ishlaydi, ya'ni dasturchiga biron bir narsani o'zgartirishga ruxsat bermaydi va shuning uchun kerakli natijani olish imkoni ega bo’lmaydi.
5. Assembler tilini bilish faqat yuqori darajadagi tillarda dasturga ega bo'lganlarga nisbatan katta afzallik beradi. Assembler biladigan dasturchi kompyuterning tuzilishini va apparat apparatlarining tuzilishini biladi.
Assemblerda tuziladigan dasturlar mikroprotsessor imkoniyati va resurslarini to‘liq hisobga olgan holda amalga oshiriladi, masalan, 16-bit, 32-bit va hk. Dasturlarni assemblerlash va bog‘lanish muharrirlari yordamida exe-faylga yig‘ish uchun turli kompilyatorlar ishlab chiqilgan. Masalan:
MASM (Macro Assembler) - Microsoft firmasining paketi. DOS bilan bir vaqtda Windows 9x/NT uchun assembler dasturlarini kompilyatsilashda ishlatiladi. Yangi versiyasi paketi MASM32 deb nomlanadi;
TASM (Turbo Assembler) - Borland firmasining mahsuloti. DOS dasturlarini kompilyatsiya qilishda qo‘llaniladi. Yangi versiyasi TASM5 yoki TASM5+ (TASM5Plus) deb ataladi;
WASM (Watcom Assembler) - Watcom firmasi tomonidan ishlab chiqilgan. DOS va Windows uchun tuzilgan dasturlarni kompilyatsiyalashda juda sodda interfeysga ega;
Lazy Assembler - TASM ning rivojlantirilgan versiyasi, yangi buyruq protsessorini o‘zida mujassamlashtirgan;
FASM (Flat Assembler) - MSDOS, Windows, Linux kabi operatsion tizimlarda ishlay oladigan, 16-, 32- hatto 64-razryadli protsessorlar uchun ham qulay ish muhitiga ega bo‘lgan kompilyator.
NASM (Netwide Assembler) - bu ham LINUX/BSD asosida ishlaydi;
|