Compiler, Interpretator va Jit compiler lar haqida qisqacha

Compiler, Interpretator va Jit compiler lar haqida qisqacha

Alisher Ashurov

Compiler

Compiler -  yuqori dasturlash tillarida yozilgan kodlarni to'laligicha mashina kodiga o'girib beruvchi dasturdir.

Aytaylik add.src faylimizda 10 qatordan iborat kod yozilgan bo'lsa compiler mana shu 10 qator kodni bir vaqtning o'zida skaner qilib uni mashina kodiga o'giradi.

Interpretator

Interpretator -  yuqori dasturlash tillarida yozilgan kodlarni har bir qatorini alohida alohida mashina tiliga o'girib beradi.

Yuqorida keltirgan add.src faylimizni 10 qatorini alohida alohida mashina kodiga o'giradi.

Fahmlaganingizdek bu yerda ikki omil bor ularni farqini sezishga yordamlashuvchi. Bular:

  • debugging(xatolarni aniqlash)
  • speed of runtime(kodning bajarilish vaqti)

Debugging - dasturiy mahsulotda yuzaga kelgan xatolarni aniqlash va ularni bartaraf qilish jarayoni.

Speed of runtime - dasturiy mahsulot ishga tushishi uchun talab etiladigan vaqt.

Compiler butun faylni bir vaqtning o'zida mashina kodiga o'girgani uchun Inpterpretator dan tezroq ishlaydi. Lekin shu bilan birga Compilerda xatoliklarni aniqlash bir muncha mushkul kechadi.

Masalan add.src faylining 4-qatorida qandaydir xatolik bo'lsa inpterpretator ishini shu yerda yakunlaydi va dasturchiga xatolik haqida xabar beradi, compiler esa 4- qatorda xatolik bo' lsa shunchaki uni tashlab 5-qatorga o'tib ketadi va butun faylni mashina kodiga o'girgachgina xatolik haqida xabar beradi.

JIT-Compiler

JIT-Compiler (Just In Time) esa ikkala dasturni ustun tomonlarini o'zida mujassam etgan translyator.Yani u interpretatordan debugging ni va compiler dan tezlikni oladi. U kodlarni blok blok qilib mashina kodiga o'giradi.

Qaysidir blokda xatolikka duch kelsa dasturchiga bu haqida xabar beradi. Dasturchi koddagi xatolikni bartaraf etib kodni qayta ishga tushirganda esa yana kelib qolgan joyidan davom etadi, ya'ni bu compiler lar bir xil kodni ikki marta translatsiya qilmaydi.



Dasturchilar akademiyasiga bog'lanish 

Telefon: +998999884031

Telegram: @Gitaadmin

Ijtimoiy tarmoqlarda kuzating  

Youtube

Facebook

Instagram

Telegram

Report Page