Ma`lumotlar : 1092
Xabarlar soni: 314
Bugun: 18.4.2024
Soat: 4:11
FORTRAN tili haqida ma’lumot
Muallif: Mengliyev Sh.
Qo`shilgan sana: 2017-10-16
FORTRAN tili haqida ma’lumot
Hisob kitob texnikasida buyuk yutug‘lardan biri bu 1954- yilda IBM 704 kompyuterini yaratilishi bo‘ldi va aynan bu imkoniyat FORTRAN tilini tuzishga sababchi bo‘ldi. Shuni aytish joizki agar IBM korporatsiyasi o‘zining IBM 704 kompyuteri va FORTRAN tili bilan bo‘lmaganda ham boshqa biron bir tashkilot o‘zining kompyuteri va yuqori darajadagi tili bilan bo‘lgan bo‘lar edi. Shu bilan birga nafaqat hodisalarning rivojlanishini ko‘ruvchu balki bu ish bilan shug‘ullanishga resurslarni topa olgan IBM korporatsiyasi birinchi bo‘ldi.
Impirativ tizimining 1940- yil oxirlaridan 1952- yilning o‘rtalarigacha to‘liq foydalanishga yaroqliligining sabablaridan biri boshqa kompyuterlarda bo‘lmagan(apparativ vosita) haqiqiy sonlar ustida ishlashi apparativ vositasi edi. Bu xarakat dastur darajasida modimirizatsiya qilingan bo‘lishi kerak edi. Chunki ularni bajarish ko‘p vaqtni olardi.Shuning uchun sonlarning dasturiy ishlashiga ko‘p vaqt ketardi. Haqiqiy sonlarga oid harakatlarni dastur darajasida amalga oshirishda imperpiritatsiyaga chiqimlar ko‘p ketardi. Shu vaqtdan ko‘p dasturchilar mashinaga oid kodlar qo‘lda dasturlashga ko‘p ahamiyat berib interpritatsiya tizimilaridan foydalanishmagan. IBM 704 tizimining kelib chiqishi haqidagi ma’lumot apparativ darajada indeksli adrisatsiya va haqiqiy sonlar uchun kamandalarga ega.
FORTRAN tili dastlabki kompilyari yuqori darajali til bo‘lishiga qaramay, bu dastlabki tilning ixtirochisi kimligi haqidagi savol hali ham javobsiz qolmoqda. Knut va Pardo(1977) bunga Alik Glinnini Manchestrda Mark I. kompyuteriga Autocode kompilyatorini tuzganligi uchun sazovor deb biladilar. Glinni bu kompilyatorni qurolning ilmiy tadqiqot jamiyatining qurolli kuchlari Armamans Reseanchiga tegishli Britanyadagi Fort-Xolstedda ishlab chiqdi. Kompilyator 1952- yilning sentyabr oyida ishga tushurildi. Lekin Djon Bekusning fikricha Glinining Autocodi kompilyatori juda past darajada va mashina arrenterlangan edi, shuning uchun uni to‘liq ravishda tizimitik kompilyasiya deb bo‘lmaydi. Bkus kompyuterining ixtirichisi deb Massachur texnologik universitetidagi Lening vassirlerni deb hisoblaydi.
Lening vassirlerning tizimi dastlab translyasiyaning amalga oshirish uchun tuzilgan translyasiyaning algebraik tizimi bo‘lgan. “Algebrik” so‘zining mohiyatida (tushunchasida) bu matematik vazifalarga yondashib arifmetik ifodalarni translyasiya qiluvchi va undan tashqari indeksatsiyaga yo‘naltiruvchi tarkibli tizimini nazarda tutilgan. Bu tizimi MIT institutiga tegishli Whirlwind kompyuterida amalga oshirilgan va 1952-yilda yozda eksperimental prototik shaklida, 1953-yilning may oyida esa foydalanishga ancha moslashtirilgan holatda taqdim qilingan. Dasturga o‘giradigan har bir formula yoki ifodani kodlashda translator podprogrammalarga yondashar edi.
Oldingi ishlarga qaramay dastlabki kompilyasiya qilingan yuqori darajali keng tarqalgan til Fortran tili bo‘ldi va rivojlanishi xronalogiyasi quyidagicha bo‘limlarga bo‘linishga olib keldi.
Fortran tilini ishlab chiqish haqidagi rejalar IBM 704 tizimini 1954- yilning may oyida tuzishdan oldin bor edi. IBM korparatsiyasida ishlovchi Djon Bkus va uning guruhi 1954- yilning noyabrь oyida “IBM matematik formulalar translyator tizimi: Fortran” mavzusi asosida hisobotni nashrdan chiqarishdi. Bu hujjatda Fortran tilining birinchi Fortran 0 deb ataydigan nusxasi chop etilgan va Fortran tilining rivojlanishida katta yordam bo‘lgan. Ilmiy ishda yozilishicha Fortran tili boshqa dasturlar kabi samarali, unda qo‘lda foydalanishi, dasturlash ham tizimida interplitatsiya qilingan psevdo kodlar kabi qulay. Hujjatda dasdiqlanishicha Fortran tili dasturlashdagi xatoliklarni ham bartaraf qiladi. Bu ma’lumatlarga asoslanib Fortran tili birinchi kompilyatorda faqatgina sintaksisga oid xatolarni aniqlay olgan. Fortran tili quyidagi holatlarda ishlab chiqilgan:
1. Kompyuterlarning hammasi hali kichik, sekin ishlovchi uncha ishonchli emas edi.
2. Kompyuterlar asosan ilmiy hisob kitoblarda foydalanilar edi.
3. Dasturchilarning ish haqqilaridan tashqari kompyuterlarning yuqori narhidan kelib chiqib FORTRAN tilining birinchi kompyuterlarining asosiy vazifasi generativ kodni bajarishda yuqori darajadagi tezligi edi.
FORTRAN tilining dastlabki tushunchasining tasnifi shu holatda rivojlangan.
FORTRAN I tili haqida qisqacha ma’lumot
FORTRAN 0 tili 1955- yilning yanvar oyidan 1957- yilning oralig‘i ichidagi rivojlanish davrida holati ancha o‘zgardi. Biz rivojlangan til deb nomlaydigan FORTRAN I tili boshqarmasi foydalanuvchining “Programmer’s Reference Manual” da yozilgan va 1956- yilning oktyabr oyida nashr etilgan FORTRAN tilida o‘zgaruvchan ismlar 6 ta belgidan (simvol) ko‘p bo‘lmasligi kerak (FORTRAN 0 da 2ta) foydalanuvchi tomonidan aniqlanuvchi kichik dasturlar shartli operator IF va DOssiklining alohida kompilyasiya qila olmasdi.
FORTRAN 0 tilida operator algebraik formulalarida yoziladigan, mantiqiy IF operatoriga ega. Masalan: “ko‘p” munosabatni bildirish uchun “>” belgisi ishlatilgan. IBM 704 kompyuterining alifbosiga “>” belgisi bo‘lmagani uchun keyinchalik bu munosabat operatorlaridan voz kechmoqlikkerak edi. Mashina 3 xil yacheyka xotirasidan kata bo‘lgan tarmoqlanishga ega edi, shuning uchun IF mantiqiy operator shakllariga ega bo‘lgan arifmetik ifoda bilan almashtirilgan edi.
IF (arifmetik ifoda) N1, N2, N3. Bu erda N1,N2,N3 operator belgilarini bildiradi.Agar ifoda qiymati manfiy bo‘lsa belgi N1 ga o‘tardi, agar u nolga teng bo‘lsa belgi N2 ga, musbat bo‘lsa belgi N3 ga o‘tardi. Bu operator hozir ham FORTRAN tilining bir qismi hisoblanadi. FORTRAN I tiliningssikl operatori quyidagi tarkibdan ifodat:
DO N1 o‘zgaruvchan=birinchi ifoda, oxirgi ifoda
Bu erda N1 oxirgi operatorssiklini belgisi bo‘lib, birinchi bo‘lib DO dan keyin turgan operator hisoblanadi.
IBM 704 kompyuteri IF operatoridan tashqari DO operatorini amalga oshirishda boshqa alohida buyruqlarga ega edi.
Bu buyruqlar keyingssikllarning shartlarini tekshirish uchun tuzilgan va DO operatori (FORTRAN I) ham shu holatda skonstruksiya qilingan edi.O‘zgaruvchan shartlarning tekshiruvchissiklini IBM 704 kompyuterida ham amalga oshirish mumkin, lekin bu qo‘shimcha buyruqlarni kiritishni talab qiladi. FORTRAN tili tarkibining yo‘naltirilishi maksimal samaradorligi bu realizatsiyadan voz kechishga sabab bo‘ldi.
FORTRAN I tilining hamma boshqaruvchi operatorlari IBM 704 kompyuterining buyruqlariga asoslangan edi. Hozirda FORTRAN I ning IBM 704 kompyuteri konstruktoriga bog‘liq boshqaruvchi strukturasining shakli bor bo‘lganligi yoki FORTRAN I tilining mutahasislari bu shakldagi buyruqni IBM 704 kompyuterida foydalanishni taklif qilganmi bu aniq emas.
FORTRAN I tilida ma’lumotlar to‘plamini aniqlovchi operatori bo‘lmagan. I, J, K, L, M va N harflaridan boshlanuvchan ifoda butun songa tegishli bo‘lib, qolganlarining hammasi o‘zgaruvchan nuqtaga ega sonlar hisoblangan. Bunday harflarni tanlashdagi shartlar butun sonlar indeksi sifatida ishlatish bilan bog‘liq. Olimlar bu maqsadda I, J, K harflardan foydalanishgan.
FORTRAN tilining mutahasislari til bilan ishlash jarayonida aytilgan so‘zlaridan biri bu mashinada kompilyator yordamida yozilgan kodlar qo‘lda yozilgandagidek samarali edi. Bu ma’lumotlar boshqa berilgan ma’lumotlar kabi patensual foydalanuvchi tomonidan berilgan spektik munosabatlarni osonlashtirgan va tipning ishlab chiqishdan oldin unga qiziqish uyg‘otish uchun aytilgan. Undan tashqari hammani hayratga solgan narsa bu FORTRAN tilining mutaxasislari oldiga qo‘ygan yuqori darajali samaralilik nuqtai nazardagi maqsadlariga to‘liq erishgani bo‘lgan.
FORTRAN tilining dastlabki yutug‘i 1958- yilning aprel oyidagi ma’lumotda aks ettirilgan.
FORTRAN II haqida qisqacha ma’lumot
FORTRAN II kompyuteri 1958 –yil bahorida keng tarqalishni boshladi. U FORTRAN I tili kopilyasiyasi tizimini ko‘p xatolarini to‘g‘irladi va undan tashqari tilga bir necha mihim bositalarni qo‘shdi. Ularning ichida eng muhim vosita bu dasturning mustaqil kompilyasiyasi edi. Bunday vositaning yo‘qligi sababli har bir o‘zgartirish barcha programmalarni qayta kompilyasiya qilishni talab qilar edi. FORTRAN I tilida mustaqil kompilyasiya yo‘qligi IBM 704 kompyuterining ishonchli emasligi bilan birga dasturlarning ko‘lamini 300-400 qatordan ko‘p bo‘lishini cheklardi. Ko‘p ko‘lamli dasturlar kompilyasiyani amalga oshirishda kam imkoniyatlarga ega edi. Dasturda kichik dasturlarni kiritish mashinaga oid tillarda kompilyasiya jarayonini qisqatirar edi.
FORTRAN IV, FORTRAN 77 va FORTRAN 90 tillari
FORTRAN III tili ishlab chiqilgan , lekin keng tarqala olmagan. FORTRAN IV esa u paytda dasturlash tilida juda keng foydalanilgan. Bu tilning rivojlanishi 1960- yildan 1962- yilgacha FORTRAN 77 tili chiqqunga qadar tilning standart nusxasi bo‘lib qolgan. Ko‘p ma’lumotlarga ko‘ra FORTRAN IV FORTRAN II dan ko‘ra ancha avzallikga ega bo‘lgan.
FORTRAN 77 tili FORTRAN IV tilining ko‘p vositalarini qo‘llab quvvatlagan, undan tashqari unda belgilar qatorini ishlovchissikllar yordamidagi mantiqiy operator boshqaruvi, ELSE operatori IF tarkibida ishlatish imkoniyatlari bo‘lgan.
FORTRAN (ANSI, 1992) tilining keying nucxalaridan biri FORTRAN 90 hisoblanadi. FORTRAN 90 tili FORTRAN 77 tilidan ancha farq qiladi. Eng muhim farqlari quyida qisqacha keltirilgan.
Massivlar bilan harakatni amalga oshiruvchi funksiyalar. Ularning tarkibiga: POTPRODUCT, MATMUL, TRANSPOSE, MAXVAL, MINVAL, PRODUCT va SUM kiradi. Ularning bajaradigan vazifalarini nomlanishidan bilish mumkin. Bu ifodali va samarali funksiyalargan bir nechtasi xolos.
Agar massivlar ALLOCATABLE sifatida e’lon qilingan bo‘lsa, ular buyruq bo‘yicha dinamik holda xotiraga joylashadi va o‘chadilar. FORTRAN tilining oldingi nusxalaridan farqli uning oxirgi imkoniyati radikal o‘garishidir.Ko‘rsatgichlar ham FORTRAN 90 tilining bir qismi hisoblanadi.
YAngi SASE ko‘p variantli tarmoqlanish operatori, EXIT barvaqt chiqib ketishi uchun, uzatish boshqaruvissikldan turib uning boshiga o‘tishi uchun SYSLE operatori boshqaruv operatori qo‘shilgan edi.
Kichik dasturlar rekursiv yoki uncha muhim bo‘lmagan va muhim parametrlarga ega .
Ada tili tarmog‘iga o‘xshash modullardan foydalanuvchi imkoniyatlar qo‘shilgan edi. Modullar o‘z ichida ma’lumotlar va kichik dasturlar haqida ma’lumotlarga ega bo‘lishi mumkin.Ularning har biri tashqi aloqani boshqarish uchun spetsifikatorlar (yordamida) PRIVATE yoki PUBLIC yordamida tavsiflanishi mumkin.
FORTRAN 90 tilini tavsiflashda oldingi xossalariga tegishli til vositalarini o‘chiruvchi yangi konsepsiya paydo bo‘lgan.FORTRAN 90 tili FORTRAN 77 tilining barcha barcha vositalariga ega edi va unda ikkita visitalar ro‘yxati tuzilgan edi. Bu ro‘yxat FORTRAN ning keyingi nusxalarida aks ettirilishi lozim edi. Bular IF arifmetik operator va GOTO belgilangan operator. Foydalanishini tavsiflanmagan vositalar ro‘yxatida FORTRAN 90 tilini davom ettiruvchi uning ikkinchi nusxasida undan bos kechish rejasi tuzilgan edi. Bu ro‘yxatga COMMON, Equi VALENSE operatorlari hisoblovchi GOTO operatori va undan tashqari operator funksiyalar bor edi.
FORTRAN tilini birinchi nusxasining mutahasislarining aytishlaricha tilni ishlab chiqarishdagi vazifalari uchun kerak.Undan tashqari FORTRAN tili nafaqat IBM kompyuterlarida balki boshqa korporatsiyalarda ham ishlashi mumkinligi ularning hayoliga ham kelmagan edi.Haqiqatdan ham ular IBM 704 korporatsiyasi tomonidan yaratgan boshqa mashinalarga kompilyatorlar o‘ylab topishga majbur edilar, shuning uchun ham IBM 704 kompyuterining davomchisi IBM 709 FORTRAN tilidan oldin yaratilgan edi va bu IBM 701 kompyuter uchun moslashtirilgan edi. SHuni aniq aytish mumkinki faqatgina FORTRAN tili haqiqatdan ham kompyuterlarda foygalangan edi qolgan tillar esa o‘zining kelib chiqishi dasturini har xil sohalarda ko‘rib chiqqan.
FORTRAN I va uning davomli vositalaridan biri FORTRAN 90 dan tashqari bu yuqori optimizatsiya qilingan kopilyatorlarni yaratishga imkon yaratilishi va bu dasturlarni amalga oshirishi ularni xotirasida muxirlanib borishidir. FORTRAN tilining oldingi nusxalarida yaratiladigan dasturlar o‘zining kelib chiqishidan hisoblovchi bo‘lgan. FORTRAN tilini global yutug‘ini qaytadan baholash qiyin u haqiqatdan ham kompyuterlardan foydalanish usullarini keskin o‘zgartirdi. Bu uning birinchi yaratilgan va keng foydalanuvchi yuqori darajali til bo‘lgani bilan bog‘liq. Keyinchalik yaratilgan til va konsepsiyalar FORTRAN ni dog‘da qoldira oladi. Ford tomonidan 1910 yilda yatilgan “Model T” avtomobili 1998-yilda yaratilgan “Ford Mustang” dan ancha orqadaligi shunga misol bo‘la oladi.Uning kamchiliklariga qaramay FORTRAN tiliga juda katta investisiya qo‘yilgan va unga yuqori darajali foydalanuvchi tillar ichidan joy bergan.
Alan Perlis ALGOL 60 tili yaratuvchilaridan biri 1978- yil shunday degan: “FORTRAN tili-bu kompyuter dunyosining lingua franca sidir ” . U yashagan va yana yashaydi, chunki u kommersiyachilik faoliyatida juda muhim foydali bo‘lishi uchun yaratilgan” (Wexelblat, 1981) quyida FORTRAN 90 tilidagi xujjatlar misol qilib ko‘rsatilgan.
Fortran 90 dasturlash tiliga misol
Kirish: butun son, List_Len, where List_Len is less
than 100, followed by List_Len-Integer values
Output: The number of input values that are greater
than the average of all input values
Implicit none
Integer Dimension(99) :: Int_List
Integer :: List_Len, Counter, Sum, Average, Result
Result= 0
Sum = 0
Read *, List_Len
If ((List_Len > 0) .AND. (List_Len < 100)) Then
!Read input data into an array and compute its sum
Do Counter = 1, List_Len
Read *, Int_List(Counter)
Sum = Sum + Int_List(Counter)
4158 marta o`qildi.