|
Protseduraviy dasturlash tillari tarixi
|
bet | 4/17 | Sana | 20.07.2024 | Hajmi | 0,56 Mb. | | #268028 |
Bog'liq 2-biletProtseduraviy 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.
Kompyuterning elektron qurilmalari ishlashning fizik tamoyillari shundan iboratki, kompyuter faqat bir va noldan iborat buyruqlarni — kuchlanishning pasayishi ketma-ketligini, yaʼni mashina kodini idrok eta oladi. Kompyuterlar rivojlanishining dastlabki bosqichida odam kompyuterga tushunarli tilda, mashina kodlarida dasturlar tuzishi kerak edi. Har bir koʻrsatma birliklar va nollarning turli kombinatsiyasi sifatida ifodalangan opkod hamda operand manzillaridan iborat edi. Shunday qilib, protsessor uchun har qanday dastur oʻsha paytda birlar va nollar ketma-ketligi sifatida qaragan.
Keyinchalik kompyuter bilan muloqot qilish amaliyoti shuni koʻrsatdiki, bunday tilni oʻzlashtirish qiyin va noqulaydir. Uni ishlatganda 1 yoki 0 ni notoʻgʻri ketma-ketlikda yozib koʻplab xatolarga yoʻl qoʻyish ehtimoli juda yuqori edi. Dasturni boshqarish juda qiyin boʻlgan. Bundan tashqari, mashina kodlarida dasturlashda kompyuterning ichki tuzilishini, har bir blokning ishlash prinsipini yaxshi bilish kerak edi va bunday tildagi eng yomon narsa shundaki, bu tildagi dasturlar — birlar va nollarning juda uzun ketma-ketligi mashinaga bogʻliq, yaʼni har bir kompyuter uchun oʻz dasturini tuzish kerak edi va mashina kodlarida dasturlash juda koʻp narsa: vaqt, ish va dasturchining eʼtiborini oshirishni talab etardi.
Tez orada mashina kodini yaratish jarayonini avtomatlashtirish mumkinligi maʼlum boʻldi. 1950-yildan boshlab dasturlarni yozish uchun mnemonik til — Assembler tilidan foydalanila boshlandi. Assembler tili mashina kodini inson uchun qulayroq shaklda koʻrsatishga imkon berdi: buyruqlar va bu buyruqlar bajariladigan obyektlarni belgilash uchun buyruqning mohiyatini aks ettiruvchi ikkilik kodlar oʻrniga harflar yoki qisqartirilgan maxsus soʻzlar qoʻllanilgan. Masalan, assembler tilida ikkita raqamni qoʻshish boʻyicha koʻrsatma add soʻzi bilan ifodalanadi, uning mashina kodi 000010 tarzida boʻladi.
Assembler quyi darajadagi dasturlash tilidir. Quyi darajadagi dasturlash tili, bu muayyan turdagi protsessorga yoʻnaltirilgan va uning xususiyatlarini hisobga oladigan dasturlash tili demakdir. Bunday holda, „quyi“ „yomon“ degani emas, balki bu shuni anglatadiki, til operatorlari mashina kodiga yaqin va maxsus protsessor koʻrsatmalariga qaratilgan boʻladi
|
| |