Kompilyator va interpretator haqida
Dasturlardan foydalanib, biror ish bajarish va shu orqali natija olish, unchalik qiyin jarayon emas. Bir marotaba ko'rib olgan inson, keyingi safar o'zi bajara oladi. Ko'pchilik adashtiradigan narsa, bu foydalanuvchi dasturchi deyilmaydi, faqatgina dastur foydalanuvchisi bo'ladi xolos. Dasturchi, foydalanuvchilar foydalanishi uchun dastur yaratadi va bu jarayon juda murakkab hisoblanadi.
Dasturchilik bilan shug'ullanishni endi boshlagan yoshlar ko'p qiyinchiliklarga duch kelishadi. Bu qiyinchiliklar asosan terminlarning tushunmasligidan kelib chiqadi. Bu maqolamda dasturlashning eng kerakli termini hisoblangan interpretator va kompilyator haqida bo`ladi.
Dasturlash jarayonida dasturchi o'z dasturini yaratish uchun xar hil turdagi kodlar yozadi. Kodlarnining qanday bo'lishi qaysi dasturlash tilidan foydalanib, dastur tuzishga bog'liq bo'ladi. Dasturlash tillaridan C, C++, Java,… .
Yozilgan kodlarni kompyuter tushunmaydi, kompyuter tushunishi uchun uchun bu kodlarni kompyuter tushunadigan tilga o'zgartirish lozim. Mana shu vaziyatda yuqoridagi 2 ta termin kerak bo'ladi (kompilyator yoki interpretator).
Kompyuter faqatgina raqamli kodlarni tushunadi, ya'ni 0 yoki 1. Bu 2 son orqali dastur tuzish juda qiyin hisoblanadi. Shuning uchun, insonlar tushunadigan qilib dasturlash tillari yaratilgan. Dasturchi dasturlash tillari orqali kodlar yozadi va bu kodlar kompyuter tushunadigan 0 va 1 sonlariga almashtiriladi va dastur kompyuterda ishlaydi, bu jarayonni kompilyator yoki interpretator amalga oshirib beradi.
Kompilyator – murakkab dasturdir, dasturlash tilida yozilgan barcha kodlarni birdaniga ob'yektli kodga o'zgartirib beradi. Ob'yektli kodni yana ikkilik kod yoki mashina kodi deb ham atashadi. Keyinchalik bu ob'yektli kod kompyuterda to'g'ridan to'g'ri ishlatilishi mumkin bo'ladi. Dasturlash tillarida yozilgan kodlar bu ob'yektli kodga ta'sir qilmaydi. Ob'yektli kodni o'zgartirish uchun esa, qaytadan kompilyatsiya qilinib ob'yektli kod o'zgartiriladi. Natija bajariladigan, .exe ko'rinishidagi fayl bo'ladi. Bu faylni bloknotda ochib o'zgartirib bo'lmaydi, ya'ni bu fayl tayyor dastur hisoblanadi. Kompilyatorning kamchiligi sifatida, dasturlash tilidagi ma'lum bir qatorlarni alohida tekshirish imkoniyati yo'qligidir, uning uchun ob'yektli kod yaratib, uni ishga tushurish lozim bo'ladi. Undan tashqari ba'zi kompilyatorlar bir dasturlash tilidan, ikkinchisiga ham o'zgartirib berishi mumkin. Kompilyator ishlatadigan dasturlash tillariga C, C++, Delphi larni misol qilib keltirish mumkin.
Interpretator – ham dastur ham jihoz ko'rinishida bo'lishi mumkin. Bu ham kompyuter tiliga o'zgartirib berish vazifasini bajaradi, faqatgina ishlash texnologiyasi boshqacharoqdir. Interpretator, dasturlash tilida yozilgan kodlarni ketma – ket o'qib, mashina tiliga o'zgartirib boradi. Xatolik paydo bo'lsa, o'sha zahoti dasturchiga ma'lum qiladi. Bu ketma – ketlikda o'zgartirish, kompilyatorga nisbatan sekinroq amalga oshiriladi (ba'zi hollarda kompilyatorga qaraganda 50 barobar sekin). Dastur natijasini ko'rish uchun, har safar kodlarni interpretatordan o'tkazish kerak bo'ladi (kompilyatorga o'xshab bir marotaba ob'yekt kod yaratib qo'yib, keyin har doim ishlatishning iloji yo'q). Bundan ko'rinib turibdiki, interpretator asosan saytlar, umumiy holda web dasturlashda ishlatiladi. Biror saytning yuklanishi jarayni uzunligi, interpretatorda o'zgartirish amalga oshirilishi bilan tushuntirilishi mumkin. Interpretator ishlatadigan dasturlash tillariga PHP, JavaScript, JScript, Basic,… misol bo'la oladi.
Bu ikki termin umumiy holda translyator deyiladi, ya'ni o'zgartirgichlardir. Biror proyektlar qilganda bu 2 o'zgartirgichlar birgalikda ham ishlatilishi mumkin.
Do'stlaringiz bilan baham: |