1-mavzu: Kirish uslubmetdiReja


Assembler tili uchun kompilyatorlar


Download 1.97 Mb.
bet20/39
Sana05.01.2023
Hajmi1.97 Mb.
#1078956
1   ...   16   17   18   19   20   21   22   23   ...   39
Bog'liq
Paradigma maruzalar

3. Assembler tili uchun kompilyatorlar
Har qanday operatsion tizim bir necha yuz, balki undan ham ko’proq dasturlar birlashmasidan tashkil topadi. Dastur esa o’z navbatida ma’lum bir dasturlash tilida yozilgan buyruqlar ketma-ketligidir. Hozirgi kunga kelib, dunyoda 400 ga yaqin dasturlash tillari mavjud bo’lib, ulardan dastur tuzishda foydalaniladi. Bu tillar inson tushuna oladigan va ularni boshqara oladigan darajada osonlashtirib foydalanishga joriy etilgan. Ammo bu tillarning birortasini, shu jumladan, Assemblerni ham mashina tushuna olmaydi. Mashina uchun esa alohida mashina tili mavjud bo’lib, u faqat ikkilik sanoq tizimidagi( faqat 0 va 1 dan tuziladigan sonlar tizimi) sonlar orqali ifodalanadigan buyruqlar ketma-ketligi ko’rinishida bo’ladi va jud ham soda, ammo yodda saqlash juda murakkabdir. Unda to’g’ridan-to’g’ri dasturlash qiyin. Shu sababli inson uchun mo’ljallangan dasturlash tilida yozilgan dasturni mashina tiliga o’girib beradigan vosita kerak bo’ladi. Bu vosita dasturlashda kompilyator deb ataladi. Demak, har bir til o’zning kompilyatoriga ega. Assembler tili uchun ham bir qator kompilyatorlar mavjud.
Har bir qurilma(mikroprotsessorga ega istalgan moslama) o’z Assembler tiliga ega va o’sha qurilmada ishlaydigan operatsion tizimlar(agar qurilma operatsion tizimga ega bo’lsa, albatta) qurilmaga mo’ljallangan assembler tilida dasturlash imkoniyatini beradi. Masalan, Intel protsessorlsrida ishlaydigan widows, Linux, Mac OS X va boshqalar shu protsessor uchun mo’ljallangan assemblerni taqdim etishadi. Intel protsessorlari juda ham mashhur bo’lganligi sababli, ko’pgina dasturiy ta’minot ishlab chiqaruvchi firmalar Intel Assembleri qoidalariga mo’ljallangan o’z imkoniyatlarini ishlab chiqishgan. Assembler dasturi protsessordan tashqari qaysi kompilyatorga mo’ljallab yozilayotgani ham hisobga olinadi. Chunki bir kompilyator uchun yozilgan dastur ikkinchisiga to’g’ri kelmasligi mumkin. Farq juda katta bo’lmasada, qoidalar biro z farq qiladi.
NASM(Netwide Assembler-Butun Tamoq Assembleri) assembler kompilyatori butun dunyoda foydalanishda bo’lib, uni tanlashdan maqsad undagi assembler qoidalari ancha osonlashtirilgan, ya’ni bosh qotirishi kerak bo’lmagan har xil sozlashlar dasturchi zimmasidan olib tashlangan va kompilyator tomonidan o’z-o’zidan bajariladi, qolaversa, NASM assembler tushunishga juda oson. Ushbu xususiyatlar, ayniqsa, o’rganish maqsadlarida qo’l keladi. Bundan tashqari NASM barcha operatsion tizimlarda ishlaydi.
NASM kompilyatori LGPL(Lesser General Public License) guvohnomasi bilan chiqadi, ya’ni dastur ochiq holda erkin(to’lovsiz) tarqatiladi.Mahsulotni olib o’zgartirish va qayta tarqatish mumkin.
NASMdan tashqari yana bir qancha kompilyatorlar mavjud va ularni qisqacha ko’rib chiqamiz:

  • MASM(Microsoft Assembler) Assembler dasturlarining tuzilish uslubi bir muncha chalkash va protsessor buyruqlaridan ham ko’ra ko’proq o’zning ichki atamalarini yozishga to’g’ri keladi. Buning ustiga yana pullik mahsulotdir.

  • TASM(Turbo Assembler) kompilyatori birmuncha yaxshiroq, ammo MASM ga qarab yaratilgan va unga juda o’xshaydi. TASM ham pullik mahsulot.

  • GAS(GNU Assembler) Assembleri qoidalari juda “daxshatli” va u inson dasturlashiga mo’ljallanmagan. GAS assembleri asosan boshqa dasturlar tomonidan ishlatiladi. Ushbu mahsulot bepu va Windows, Linuxda ishlaydi.

  • AS Assembleri faqat Linux va MINIXda ishlaydi.

  • FASM kompilyatori NASMga o’xshash bo’lib, NASM uchun mo’ljallab yozilgan dasturlarni tushunadi va NASM kabi oson dasturlash qoidalariga ega.

7-Ma’ruza
Mavzu: Imperativ protseduraviy dasturlash
Reja:
1. Protsedurali dasturlash tushunchasi.
2. Masalani qism masalalarga bo’lish.
3.Funksional dekompozitisya.

Download 1.97 Mb.

Do'stlaringiz bilan baham:
1   ...   16   17   18   19   20   21   22   23   ...   39




Ma'lumotlar bazasi mualliflik huquqi bilan himoyalangan ©fayllar.org 2024
ma'muriyatiga murojaat qiling