Ayirish amali qoidasi:
sub maqsad , manba ;; maqsad=maqsad-manab
7. Assembler tili dasturlashda alohida o’ringa ega. Assembler tilidagi dastur to’g’ridan to’g’ri markaziy protsessor buyruqlaridan foydalanilgan holda tuziladi. Bu esa dasturchiga protsessor imkoniyatlarini chinakam bilishga yordam beriadi. Yuqorida ta’kidlanganidek, Assembler tilidan asosan kompyuter qurilmalari bilan to’g’ridan-to’g’ri ishlaydigan va ularni boshqaradigan dasturlar(drayverlar) tuzishda foydalaniladi. Masalan, mashina ishlab chiqaradigan korxonalardagi avtomatlashgan robotlardan boshlab, elektron meditsina asboblarigacha barchasi uchun yoziladigan baoshqaradigan dasturlar shular jumlasidandir. Ammo hozirgi mavjud barcha qurilamalar uchun boshqaruvchi dasturlar yozilganku, endi Assemblerni o’rganish nimaga kerak degan savol tug’ilishi mumkin. To’g’ri lekin hayot hozirda mavjud kompyuter imkoniyatlari bilan to’xtab qolmaydi. Kundan-kunga yangi qurilmalar ishlab chiqilyapti va ularni boshqaruvchi dasturlarni tuzish uchun Assembler dasturchilari kerak bo’ladi.
Kompyuter arxitekturasi deganda odatda, foydalanuvchiga ruxsat etilgan resurslar to’plami sifatida tushuniladi. Bu buyruqlar tizimi, umumiy registrlar, protssor holatini ifodalovchi so’z va manzilli fazo. Assembler tilidan mashina tiliga o’girish jarayoni assemblerlash deb ataladi.
Assembler dasturlash tili inson tiliga yaqin bo’lib, unda faqat tushunarsiz sonlar o’rnida inson uchun tushunarli bo’lgan harfli ifodalar va nomlar ishlatiladi. Assembler tilida yozilgan dastur esa kompilyator nomli maxsus dastur yordamida mashina tiliga o’giriladi.
Dasturlash olamida Assembler tili asos sifatida tan olinadi. Deyarli barcha qolgan dasturlash tillari Assemblerda “qurilgan”. Shunday ekan, Assembler tilini o’rganish poydevor vazifasini o’taydi. Kompyuterda dastur ishga tushganda uning ichida nimalar sodir bo’lishi haqida tushunchaga ega bo’lish dasturchi uchun juda muhim, chunki shundagina u masalaning tub mohiyatini anglash mumkin.Bunday holatni esa faqat Assemblerda uchratishimiz mumkin. Yuqori darajali tillar hisoblangan C/C++,Pascal, PHP,Perl,Python yoki Java tillaridan farqli o’laroq, Assemblerda dasturchi protsessorda bo’layotgan ichki jarayonlarga o’zi guvoh bo’ladi. Xullas, kuchli dasturchi bo’lishni istagan va uni ilmiy asosda egallamoqchi bo’lgan har bir dasturchi Assembler tilini tushunishi shart.
Assembler tili qaysi kompilyatorga asoslanganiga qarab har xil ko’rinishda bo’ladi. Ammo bir necha xil assembler tillari mavjud bo’lsada, ularning hammasining asosi bir xildir va bir-biridan kam farq qiladi. Asosiy farq dasturni yozish qoidalarida bo’ladi.
8. FASM kompilyatori NASMning yaqin “og’yanisi” bo’lib, NASM uchun mo’ljallangan dasturlarni tushunadi va NASM kabi oson dasturlash qoidalariga ega.
NASM (Netwide Assembler-Butun tarmoq assembleri) kompilyatori LGPL (Lesser General Public License) guvohnamomasi bilan chiqariladi. NASM erkin tarqatiladigan dastur bo’lib, uning barcha operatsion tizimlarga mo’ljallangan eng oxirgi versiyasini quyidagi saytdan olish mumkin: nasm-io.inc kutubxona faylida C tilining standart kutubxonasidagi o’quv/yozuvni amalga oshiradigan qism dasturlarini assemblerdan turib chaqirishni osonlashtiradigan makroslar mavjud.
MASM(Microsoft Assembler) assembleri dasturlarni tuzilish uslubi bir muncha chalkash va protsessor buyruqlaridan ham ko’ra ko’proq o’zining ichki atamalarini yozishga to’g’ri keladi. Buning ustiga u pullik mahsulotdir.
Do'stlaringiz bilan baham: |