Dastur va dasturlash tillari - Toshkent tibbiyot akademiyasi biotibbiyot muhandisligi, informatika va biofizika kafedrasi

|
Toshkent tibbiyot akademiyasi biotibbiyot muhandisligi, informatika va biofizika kafedrasi
|
bet | 5/10 | Sana | 16.11.2023 | Hajmi | 0,95 Mb. | | #99800 |
Bog'liq MT№3 Ibragimova D. GinekologiyaDastur va dasturlash tillari:
Ma'lumki, kompyuter texnikasidan samarali foydalanish ikki qism — texnik va dasturiy ta'minotning uzviyligini talab etadi. Bu uzviylik kompyuter texnik ta'minotining jadal sur'atlar bilan takomillashib borishiga mos dasturiy ta’minotni ham keskin sur'atlar bilan rivojlanishiga sabab bo'ladi, va aksincha. Buning sababi ma'lum, mos dasturiy ta'minotsiz har qanday kompyuter «qimmatbaho o‘yinchoq» bo‘lib qolaveradi.
Ma’lumki, kompyuterda biror masalani hal qilish uchun awal uning qandaydir nusxasi olinadi va algoritmi tuziladi, so‘ng mazkur algoritm ma'lum bir qonun-qoidalar asosida kompyuter tushunadigan ko‘rsatma va buyruqlar shaklida yoziladi. Hosil bo’lgan matn kompyuter tilida yozilgach, dastur deb ataladi Demak, dastur — biror masalani yechish uchun kompyuter bajarishi mumkin bo'lgan ko‘rsatmalarning izchil tartibi ekan.
Kompyuter uchun dastur tuzish jarayoni dasturlash va dastur tuzadigan kishi dasturchi deyiladi. Kompyuter tushunadigan «til» esa dasturlash tili deb ataladi.
Dasturlash tillarini shartli ravishda quyidagi uch guruhga ajratish mumkin:
Quyi darajadagi dasturlash tillari
O‘rta darajadagi dasturlash tillari
Yuqori darajadagi dasturlash tillari
Dasturlash tillari tarixidan. Dasturlash tillari, asosan, ikkinchi jahon urushidan keyin yaratila boshlandi. Ammo uning boshlanish tarixi ancha olis yillarga borib taqaladi.
Arxeologik qazilmalarda topilgan sopol taxtachada bundan 3800 yil oldin (eramizdan awalgi 1800- yillar) Bobilda foiz bilan bog‘liq murakkab amallar algoritmi keltirilgan. Unda aniq masala ishlangan bo‘lib, agar bug'doy hosili yiliga 20% dan oshib borsa, uning miqdori ikki marta o‘sishi uchun necha yil va oy kerak bo‘lish algoritmi tuzilgan.
XIX asr fransuz kashfiyotchisi Jozef Mari Jakkard 1804- yilda yupqa mato ishlab chiqish jarayonida to'quv dastgohlari uchun perfokartani eslatuvchi tasma ishlatgan va shu bilan perfokartaga asos solgan edi. 1836- yilda ingliz olimi Charlz Bebbij hozirgi kompyuterlarning bevosita ajdodi bo‘lmish analitik mashina ishlab chiqishga kirishdi va bu masalani nazariy hal qildi. Bu mashinaning asosiy xususiyati uning dastur asosida ishlashi va hisob-kitob natijalarini «eslab» qolishida edi. 1843- yiida ingliz matematigi Ogasta Ada Bayron (Lavleys) — shoir lord Bayronning qizi analitik mashina buyruqlar asosida ishlashi lozimligini ta'kidladi. U berilgan shartlar bajarilm agunga qadar qadam lar ketma-ketligini ta’minlovchi buyruqlarni yozdi. Ana shu holat bilan u dasturlash tiliga asos soldi. Mazkur va boshqa kashfiyotlar kompyuter yaratilgach, ularni ishlatish uchun zarur Ada Rayron bo‘lgan til yaratilishini talab etdi.
Quyi darajadagi dasturlash tillari kompyuter qurilmalari bilan bevosita bog‘liq bo'lib, buyruqlar maxsus raqamlar (kodlar) yordamidayoziladi. Bu kabi buyruqlardan tashkil topgan dasturlar katta hajmli bo'lib, ularni tahrir qilish ancha mushkul ish hisoblanadi. Dastlabki elektron hisoblash mashinalarida («ENIAK», «MESM» va boshqalar) masalalarni yechish uchun ana shunday buyruqlar yordamida dasturlar tuzilgan. Misol tariqasida M-20 rusumidagi elektron hisoblash mashi- nasida qo‘llanilgan tilda tuzilgan dastumi (dastur doira yuzini hisoblash amallarini o‘z tchiga olgan) izoh bilan keltiramiz:
Ko‘rinib turibdiki, bu tilda dastur tuzish ancha mashaqqatli ekan. Buning asosiy qiyinchiligi — bir tomondan buyruqlarning raqamlar yordamida ifodalanishi bo'lsa, ikkinchi tomondan dasturchidan har bir amalning bajarilishida jamlagichdagi sonli qiymatning qaysi o‘zgaruvchiga tegishliligini va boshqa o‘zgaruvchilarning qiymatlari qaysi adresda joylashganligini bilish talab etiladi. Dastur tuzishni osonlashtirish maqsadida inson tiliga yaqin bo'lgan buyruqlar tizimini tuzish va qo‘llash masalasi qo'yildi hamda hal etildi.
|
| |