Dasturlash tillari

Referatlar | Informatika va AT

sellerImagesellerImagesellerImagesellerImagesellerImage
124
Mualliflik huquqi buzilgan holatdashikoyat qiling!

6 000 so'm

  • Betlar soni: 15 ta
  • Fayl hajmi : 109.5 KB
  • Fayl turi: .doc
dasturlash

Mahsulot tavsifi

 

                                Dasturlash tillari

Reja:

1. Birinchi yuqori darajali dasturlash tillari: cobol ва fortran.

2. Protseduraviy dasturlash tillari tarixi.

3. Sun`iy intelekt tillari

4. Zamonaviy obyektga yo`naltirilgan va vizual dasturlash  tillari.

Birinchi EHM lar uchun dasturlani dasturchilar mashina kodi tilida yozganlar. Bu juda qiyin va uzoq vaqt talab etadigan jarayon edi. Dastur tuzishni boshlash va ishlatib ko`rish orasida ancha vaqt o`tar edi. Bunday muammolarni yechish faqatgina dasturlash jarayonini rivojlantirish, optimizatsiya qilish orqaligina bajarilishi mumkin edi. 

         Dasturchilar mehnatini iqtisod qiluvchi bunday “jixoz” o`rnini qism dasturlari egalladi. 1944 yil avgustida releli “Mark-I” mashinasi uchun Greys Xopper (dasturchi ayol, AQSH ning dengiz ofitseri) boshchiligida sin x ni hisoblovchi qism dasturi yozildi.

Greys Xopperdan boshqalar ham bu ishda ortta qolmadilar. 1949 yilda Jon Mouchli (ENIAK EHM si ixtirochilaridan biri) yuqori darajali dasturlash tillarining dastlabkilariga asos bo`lgan Short Code sistemasini ishlab chiqdi. 1951 yilda Greys Xopper birinchi bo`lib A-O kompilyatorini yaratdi.

Birinchi yuqori darajali dasturlash tillari:     Cobol ва  Fortran.

 

O`tgan asrning 50-yillarida Greys Xopper boshchiligida yangi dasturlash tili va kompilyatori V-O ni ishlab chiqishga kirishildi. Yangi til dasturlashni ingliz tiliga yaqin tilda yuajarish imkonini berdi. 30 ga yaqin inglizcha so`zlar tanlandi.

1958 yilda V-O sistemasi Flow-Matic nomini va tijoriy ma`lumot-larni qayta ishlashga yo`naltirildi. 1959 yilda COBOL (Common Business Oriented Language – umumiy tijoratga yo`naltirilgan til ) tili io`lab chiqildi. Bu til mashinadan mustaqillikka ega bo`lgan yuqori darajali biznesga yo`naltirilgan dasturlash tilidir. Mashinadan mustaqillikka ega bo`lgan dasturlash tillarida yozilgan dasturlar istalgan turdagi EHM da maxsus kompilyatorlar vositasida bajarilaveradi. COBOL tilini yaratishda ham Greys Xopper maslahatchi bo`lgan.

1954 yilda FORTRAN (FORmula TRANslation) tili yaratilayotgani haqidagi xabar chop etildi. Bu dastur IBM kompaniyasining Nyu Yorkdagi shtab kvartirasida yaratildi. Uni a tuzuvchilardan biri Jon Bekus bo`ldi. U BNF(NFB - normalnaya forma Bekusa – Bekusning normal formasi ) muallifi bo`lib, bu forma ko`plab dasturlash tillarining sintaksisini izohlashda qo`llaniladi.

Bu vaqtda Yevropa davlatlarida mashhur til ALGOL edi. Xuddi Fortran kabi u ham matematik topshiriqlarga yo`naltirilgan edi. Unda o`sha davrning ilg`or texnologiyasi – tarkibli dasturlash amalda qo`llangan.

Ko`plab dasturlash tillari o`tgan asrning 60-70-yillarida paydo bo`ldi. Uzoq vaqt yashagan tillar sirasiga BASIC tilini kiritish mumkin. Bu dasturlash tili 1964 yilda Jon Kemeni va Tomas Kurs boshchiligida Dartmut universitetida ishlab chiqildi. Mualliflarining fikriga ko`ra bu til sodda, o`rganishga oson va murakkab bo`lmagan hisoblashlarni bajarishga mo`ljallangan.  BASIC ko`proq mikro EHM va shaxsiy kompyuterlarda keng tarqaldi. Dastlab bu til tarkib(struktura)li bo`lgani uchun sifatli dasturlashni o`rganishga qiyin bo`ldi. 1985 yilda uning True BASIC ishlab chiqildi. Bu dasturni tuzganlarni fikriga ko`ra bu til PASCAL ko`ra mukammalroqdir. 1991 yilda Visual BASIC ning birinchi versiyasi paydo bo`ldi.

 

Protseduraviy dasturlash tillari tarixi.

Dasturlash tillari tarixida e`tiborga sazovor voqea 1971 yilda PASCAL tilining yaratilishi bo`ldi. Uning muallifi Shvetsariyalik professor Niklaus Virtdir. Virt bu tilni fransuz fizigi va matematigi Blez Paskal sharafiga qo`ydi (Blez Paskal 1642 yili hisoblash mexanizmini ixtiro qilgan). Dachtlab PASCAL o`rganish tili sifatida tuzilgan. Bu tilda dasturlashning yorqin tomonlari ochib berilgan. Amaliyotda keng qo`llanilishi shaxsiy kompbyuterlarda Turbo PASCAL versiyasidan boshlangan. 

S (“Si”) dasturlash tili operatsion tizimlarni ishlab chiqish uchun yaratilgan. U UNIX operatsion tizimi bilan bir vaqtda yaratilgan. Ushbu UNIX operatsion tizimi va dasturlash tilining mualliflari amerikalik dasturchilar Dennis Richi va Kennet Tompsonlardir. Dastlab Kennet Tompson UNIX operatsion tizimini FORTRAN tilida yozgan. Keyinchalik S tili ishlab chiqilgandan so`ng, 1973 yilda operatsion tizimning yadrosi yordamchi dasturlar(utilita programmalar)i bilan S tilida qayta yozildi. Bu yuqori darajali tarkibli (strukturniy) dasturlash tilidir. Bugungi kunda bu til nafaqat operatsion tizimlar, balki translyatorlar, tizimli va amaliy dasturlar ishlab chiqishda qo`llaniladi.

 

Sun`iy intelekt tillari

O`tgan asrning 90-yillarida “Sun`iy intelekt” nomli beshinchi avlod kompyuterlari ishlab chiqarilishi rejalashtirilgandi. Bu ishni asosiy dasturlash tillarida amalga oshirish amri mahol edi, shu sababli loyihada sun`iy intelekt tillari sifatida LISP va PROLOG tillari tanlandi.

LISP dasturlash tili (1956-1959 yillar) asoschisi Jon Makkarti bo`lib, u sun`iy intelektning otasi hisoblanadi. Aynan u birinchi bo`lib “sun`iy intelekt” atamasini ishlatgan. LISP tilida asosiy element rekursiv ajratilgan funksiyalar tushunish bo`lgan. Istalgan algoritm bir nechta rekursiv bilan funksiyalar to`plami vositasida izohlanishi isbotlangan. Ushbu tilning asosiy g`oyalari keyinroq Seymur Peypert boshchiligida Masachusets  texnologiyalar institutida 70-yillarda bolalar uchun ishlab chiqilgan LOGO tilida qo`llanildi.

PROLOG tili ham 1972 yilda Fransiyada sun`iy intelekt muammolarini yechish uchun ishlayu chiqildi. PROLOG tili har xil fikrlarni formal ko`rnishda tavsiflash, mantiqni muxokama qilish, kompyuterni berilgan savollarga javob berdirishga imkoniyatli hisoyulanadi.

 

  Zamonaviy obyektga yo`naltirilgan va vizual dasturlash tillari.

So`ngi yillarda kompyuterning dasturiy ta`minoti rivojlanishi asosiy yo`nalishlaridan biri bu obyektga    yo`naltirilgan dasturlash sohasi bo`ldi. Obektga yo`naltirilgan operatsion tizimlar (Masalan, Windows), amaliy dasturlar va obyektga          yo`naltirilgan       dasturlash (OYD) tizimlari ham ammviylashdi.

Birinchi OYD elementi Simula-67 (1967 y., Norvegiya) tili bo`ldi. Turbo PASCAL da 5,5 versiyasidan boshlab OYD vositalari paydo bo`ldi. Turbo PASCAL ning rivoji yakuni yakuni sifatida BORLAND filmasi tomonidan DELPHI dasturlash tizimi yaratilishi bo`ldi. Ushbu sistema yordamida tez va oson murakkab bo`lgan grafik interfeysni dasturlash  imkoniyati mavjud.  1991 yilda Visual BASIC ning I versiyasidan boshlab bu til to`laligicha obyektga          yo`naltirildi (1997 yil).

1985 yilda Bell Labs (AQSH) layuoratoriyasi S++ dasturlash tili yaratilganligini xabarini berdi. Bugungi kunda bu til OYD tillari orasida mashhurdir. Bu til yordamida istalgan  mashina uchun – shaxsiydan to superkompyuterlargacha dasturlar yozish mumkin. Bu tilning asoschisi Born Straustrupdir.

OYD tillaridan yana biri 1995 yilda Jeyms Gosling boshchiligida  Sun Microsystems kompaniyasida yaratilgan JAVA tilidir. Uni ishlab chiqishda maxsus o`rganish talab qilmaydigan, sodda tilni maqsad qilingan. 

JAVA tili maksimal darajada S++ tiliga o`xshash bo`lishi uchun yaratilgan yaratilgan JAVA Internet uchun dasturlar tayyorlashning ideal vositasidir. So`ngi yillarda Microsoft kompaniyasi tomonidan C++davomchisi sifatida  S# (Ci sharp) tili yaratildi.  Endi bizning oldimizda algoritmlarni EHM tushinadigan tilda yozish masalasi turadi, buning uchun maxsus algoritmik tillar mavjud. EHM paydo bo‘lganidan beri juda ko‘plab algoritmik tillar yaratilgan. Ularni shartli ravishda uch tipga ajratish mumkin: 

  • Quyi darajadagi programmalash tillari (mashina tillari)
  • O‘rta darajadagi programmalash tillari
  • Yuqori bosqichli programmalash tillari

 

Quyi darajadagi programmalash tillarida buyruqlar va amallar ma’lum kodlar (raqamlar) bilan ifodalangan bo‘lib, ular EHM qurilmalari adreslari bilan bevosita ishlashga mo‘ljallangan va mashina tili deb ham yuritiladi.

O‘rta darajadagi programmalash tillarida amallar va buyruqlarni (komandalar)ni ifodalash uchun odam tushunishi uchun qulay bo‘lgan har xil qisqartma so‘zlardan foydalaniladi. Bunda ham programma tuzuvchi EHM qurilmalari adreslari bilan ishlashi lozim. Bu qisqartmalar-mnemokodlar deyiladi, bu turdagi programmalash tillari assemblerlar deb ataladi.

Yuqori darajadagi programmalash tillarida ko‘rsatmalar inson tiliga yaqin bo‘lgan so‘zlar va birikmalardan iborat bo‘lib, programma tuzish uchun juda qulay va biror maxsus amallardan tashqari hollarda adreslar va qurilmalar bilan bevosita bog‘liq ko‘rsatmalarni bilish zarur emas. Yuqori bosqich programmalash tillariga misol sifatida FORTRAN, Algol, RL-1, BASIC, PASCAL, C, C tillarini keltirish mumkin.

Informatsion texnologiyalarining jadal suratlar bilan rivojlanishi, Internetning paydo bo‘lishi, yangidan yangi va ma’lum maqsadlarga mo‘ljallangan programmalash tillari va muhitlari yaratildi va yaratilmoqda. Ularga misol sifatida dBase, KARAT, LISP, FoxPro, Simula, Delphi, Visual Basic, Visual S, HTML, Java, Java Script kabi tillar va programmalash muhitlarini keltirish mumkin. Hozirgi kunga kelib obyektga yo‘naltirilgan va vizual programmalash texnologiyalari keng tarqalmoqda.

Har bir algoritmik tilning o‘z alfaviti maxsus belgisi va birikmalari, operatorlari, konstruksiyalari bo‘ladi va ular ma’lum bir sintaktik va semantik qonun qoidalarga buysinadi.

Sintaksisbu alfavitdan foydalanilgan holda biror algoritmik tilda ishlatilishi mumkin bo‘lgan konstruksiyalarni aniqlovchi qoidalar sistemasidir. Bu konstruksiyalar orqali algoritmlar ifodalanadi. Shunday qilib, sintaksis har bir simvollar ketma-ketligining berilgan tildan foydalanish mumkinligini yoki mumkin emasligini aniqlab beradi.

Semantika–biror algoritmik til konstruksiyalarini ma’nosi jihatidan tekshiruvchi qoidalar sistemasidir. Biror algoritmik tilning sintaktik qoidalarini ifodalash uchun maxsus yordamchi tilga–metatil deb ataladi. Eng keng tarqalgan metatillardan biri Bekus–Naurning metalingvistik formulalari va sintaktik diagrammalaridir. Bir algoritmik tilning qonun qoidalarini aniq va bir qiymatli aniqlash uchun maxsus tushincha va belgilar zarur bo‘ladi. Tilning har bir tushinchasi uchun yagona metoformula mavjud bo‘lishi kerak va uning gap qismida kiritilayotgan tushincha, ya’ni metao‘zgaruvchi ko‘rsatiladi. O‘ng tomonda esa, metoo‘zgaruvchining qabul qilishi mumkin bo‘lgan qiymatlar to‘plami keltiriladi. Odatda metoo‘zgaruvchilar maxsus <> kavslar ichida yoziladi. Masalan: <son>, <arifmetik ifoda>. Metoformulaning chap va o‘ng qismlari maxsus metosimvol bilan ajratiladi va u “ta’rif bo‘yicha” degan ma’noni anglatadi. Masalan, quyidagi metoformula

<o‘zgaruvchi>AV

o‘zgaruvchi ta’rif bo‘yicha A yoki V harfidir degan ma’noni ifodalaydi. 

<ifoda><o‘zgaruvchi>½ <o‘zgaruvchi><o‘zgaruvchi>

      ½<o‘zgaruvchi>-<o‘zgaruvchi>

metoformula esa, yuqoridagi <o‘zgaruvchi> metoformulasiga bog‘liq holda <ifoda> sifatida quyidagi 10 ta ifodadan ixtiyoriy bittasi bo‘lishi mumkin degan ma’noni anglatadi:

A, V, AA, AV, VA, VV, A-A, A-V, V-A, V-V.

Eslatib o‘tamiz vertikal chiziq yoki degan ma’noni ifodalaydi. Faraz qilaylik biz <ikkilik kod> degan tushunchasini kiritmoqchimiz va ikkilik kod deganda 0 va 1 raqamlardan tashkil topgan ixtiyoriy ketma-ketlikni nazarda tutamiz. Umuman olganda, 0 va 1 ning o‘zlari ham ikkilik kod va ularning yoki 0 va 1 raqamlaridan birortasini yozsak, yana ikkilik kod paydo bo‘ladi yuqorida keltirilgan fikrlarni  quyidagi metaformulalar yordamida oddiy va qiska ko‘rinishda ifodalash mumkin. 

           <ikkilik raqam>::=0+1 

<ikkilik kod>::=<ikkilik raqam>+<ikkilik kod><ikkilik raqam>

 

metoformulalarda ishlatiladigan figurali qavs { }, uning ichidagi konstruksiyaning ko‘p marta takrorlanishini ifodalaydi. Yuqoridagi ikkilik kod tushunchasi figurali qavslar yordamida quyidagiga kiritilishi mumkin.

                <ikkilik raqam> ::=0+1

    <ikkilik kod>::=<ikkilik raqam> {<ikkilik raqam>}

 

seller-profile

Kompuyuter Service

🔍

Izlaganingizni topa olmadingizmi?

Balki uni aynan siz uchun yaratish kerakdir!
Sizga mos yechim tayyorlaymiz!