Assembler tilida dasturlash asoslari
2
Kirish
Hisoblash
mashinalarida
assembler
(
assembly
)
– yig’ish,
translyator
ma’nolarini anglatadi va ko’p hollarda
asm
qisqartmasi bilan ifodalanadigan quyi darajadagi dasturlash tili
hisoblanadi. Bu tildagi ko’rsatmalar (
instruction
) bilan mashina
kodidagi ko’rsatmalar o’rtasida farqlar mavjud. Shuningdek, bu
tildagi ko’rsatmalar orqali quyi darajada qurilma ta’minotiga
buyruqlar biriladi va amallar bajariladi.
Mashina tilidan farqli (ikkilik va o’n oltilik kod), assembler
tillarida buyruqlar inson tomonidan o’qilishi oson bo’lgan ketma-
ketliklarda namoish etiladi.
Assembler tili
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.
3
Birlashtiruvchi til dasturini ishlab chiqish va disk raskadrovka qilish vaqt talab
qiladigan bo'lsa-da, bu xotirada kam joy ajratadigan va asta-sekin kompyuterlarda ham
tezkor tezlikka erishish imkonini beradigan kichik bajariladigan modullarga olib
keladi. Assembler tili asosan dasturlarning individual segmentlarini (ish tezligini
oshirish va uskunaga bevosita kirish), shuningdek alohida qurilmalarning
dasturlashtirilgan xotirasida saqlanadigan tizim dasturlarini yozish uchun ishlatiladi.
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.
4
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. Assembler'da 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.
5
Dostları ilə paylaş: |