Algoritmik tillar to’g’risida ma’lumotlar.
Algoritmlarni so‗zlar orqali yoki blok-sxema ko‗rinishida tasvirlash buyruqlar
yozilishida bir qancha ixtiyoriy tarzda amalga oshiriladi. Amaliyotda esa algoritm
ijrochisi kompyuter hisoblanadi. Shuning uchun kompyuter uchun to‗zilgan
algoritm u «tushunadigan» tilda tasvirlanishi kerak. Ijrochi (kompyuter) berilgan
buyruqlarni aniq va to‗ғri bajarishi uchun unga beriladigan buyruqlar yozilishi aniq
va ijrochi tomonidan bir xil tushunilishi lozim. Shu sababli kompyuter
tushunadigan til dasturlash tili, bu tilda yozilgan algoritm esa kompyuter dasturi
deyiladi.
Dasturlash tillari asosan 2-jahon urushidan keyin yaratila boshlandi. Ammo uning
tarixi ancha olis yillarga borib takaladi. Arxeologik qazilmalarda topilgan sopol
taxtachada bundan 3800 yil oldin (eramizdan 1800-yillar) Vavilonda foiz (%) bilan
boғliq murakkab amallar algoritmi keltirilgan. Unda aniq masala ishlangan bo‗lib,
agar bugdoy yilda 20% dan oshib borsa, uning miqdori ikki marta o‗sish uchun
necha yil va oy kerak bo‗lishi algoritmi yozilgan. XIX asr franso‗z kashfiyotchisi
Jozef Mari Jakkard 1804 yilda yupqa mato ishlab chiqish jarayonida stanoklar
uchun perfokartani eslatuvchi tasma ishlatgan va shu bilan perfokartaga asos
solgan edi. 1836 yildan ingliz Charlz Bebbidj hozirgi kompyuterlarning bevosita
avlodi bo‗lmish analitik mashina ishlab chiqishga kirishdi va bu masalani nazariy
hal qildi. Bu mashinaning asosiy xususiyati uning dastur asosida ishlashi va
hisobkitob natijalarini «eslab» qolishida edi. 1843 yilda ingliz matematigi Ogasta
Ada Bayron (Lavleys) – shoir lord Bayronning qizi – analitik mashina buyruqlar
asosida ishlashi kerakligini ta‗kidladi. U berilgan shartlar bajarilmaguncha
qadamlar ketma-ketligini ta‗minlovchi buyruqlarni yozdi. (Bu hozirgi kunda
takrorlash (sikl) operatori deyiladi). Bu bilan u dasturlash va uning tiliga asos
soldi. Mazkur va boshqa kashfiyotlar, kompyuter bevosita yaratilgach, unga zarur
bo‗lgan til yaratish talabini qo‗ydi. Dunyo odamlari urtasidagi munosabatda
yagona til bo‗lmaganidek, xilmaxil kompyuterlarning yaratilishi va ularning turli
sohalarda qo‗llanilishi, yagona dasturlash tilini yaratish mumkin emasligini
ko‗rsatdi
Dasturlash tillari darajalarini quyidagi kriteriyalar bo‗yicha ajratish mumkin:
mashina tili;
assembleplar;
yuqori darajadagi dasturlash tillari;
Mashina tili va assemblerlar – quyi darajadagi dasturlash tillari hisoblanadilar. Bu
tillar yordamida dastur to‗zilganda ma‗lumotlarni qayta ishlash ularni tahrirlash
ancha mushkulroq kechadi. YUqori darajadagi dasturlash tillari quyidagi turlarga
bo‗linadilar:
Algoritmik (Basic, Pascal, C va b.);
mantiqiy (Prolog, Lisp va b.);
Ob‘ektga yo‘naltirilgan (Object Pascal, C++, Java va b.);
Translyator (ingl. Translator — tarjimon) – biron-bir yuqori dasturlash tilida
to‗zilgan dasturni mashina tiliga o‗tkazuvchi dastur-tarjimon. Translyatorlar
kompilyator va interpretator ko‗rinishida bo‗lishi mumkin. Kompilyator va
interpretatorlar dasturni bajarishda tubdan farq qiladi. Kompilyator (ingl. compiler
— yiғuvchi) dasturni to‘laligicha o‗qiydi va uni tarjima qiladi (mashina tiliga
o‗giradi). Masalan: Turbo Basic va Turbo Pascal 7.0 dasturlash tillari –
kompilyator hisoblanadi. Interpretator (ingl. interpreter — izohlovchi, oғzaki
tarjimon) dasturni tarjima qiladi va satrma-satr bajaradi. Masalan: Quick Basic
dasturlash tillari – interpretator hisoblanadi. Dastur kompilyatsiya qilingandan
so‗ng dasturlash tilida yozilgan dastur va kompilyatorga ehtiyoj qolmaydi.
Masalan, info.bas fayli kompilyatsiya qilingandan so‗ng info.exe fayliga o‗zgaradi
va bu fayl kompilyatorsiz ham ishlashi mumkin. Agar info.bas faylini interpretator
qayta ishlaganda har gal dastur ishini bajarilishi uchun interpretator ishga tushishi
shart. Shu sababli kompilyator va interpretatorlarning ishlash prinsipi bo‗yicha
birmuncha farq qiladi. Kompililyatsiya qilingan dasturlar tezroq ishlaydi, lekin
interpretatsiya qilinayotgan dasturlarga o‗zgartirish kiritish osonroq. Har bir
dasturlash tili qaysi maqsadda yaratilganligiga qarab kompilyatsiya yoki
interpretatsiyaga mo‗ljallangan bo‗lishi mumkin. Masalan, Paskal dasturlash tili
o‗ta murakkab masalalar dasturini to‗zishga mo‗ljallangan bo‗lib, bunday
masalalarni yechish uchun esa dastur bajarilishi tezligi yuqori bo‗lishi talab
qilinadi. Beysik dasturlash tili esa dasturlashni o‗rganuvchi va bu sohaga ilk qadam
bosayotganlar uchun mo‗ljallangan bo‗lib, bu tilda dasturni bajarish satrma-satr
amalga oshirilganligi sababli boshlovchilar uchun juda katta qulayliklar yaratadi.
Ba‗zida bitta dasturlash tili uchun ham kompilyator, ham interpretator mavjud.
Bunday holda dasturni yaratish va sozlashda interpretatordan foydalaniladi, so‗ng
esa dastur ishini tezlashtirish uchun esa bu fayl kompilyatsiya qilinadi.
Do'stlaringiz bilan baham: