Фортрански език на програмиране - описание, главни команди и функции

Програмният език Fortran се използва главно за научни изчисления. Изобретен през 1954 г., той е най-старият програмен език на високо ниво, следван от Lisp (1958), Algol (1958) и COBOL (1959). Броят на научните библиотеки, написани на Fortran "и създаването на специални компилатори-преводачи, позволяват използването на езика днес. Освен това са създадени многобройни калкулатори за векторизиране, копроцесори, паралелизъм, които наводняват този език за използване в промишленото производство на съвременния свят.

Исторически етапи на Fortran

Джон Бек, радиоинженер на IBM, публикуван през 1954 г. в статии, озаглавени "Предварителен доклад, спецификации за IBM Matmal Transmula TRANslating System", който бележи началото на термина FORTRAN. След това отнема още две години за целия екип, който се заема да напише първия език за програмиране на компилатора на Fortran (25 000 реда за IBM 704).


Името на езика е първоначално написано с главни букви FORTRAN и е използвано за указване на езикови версии до Fortran 77, за разлика от безплатните версии на синтаксиса, започвайки с Fortran 90. В Fortran 77 малките букви не са част от езика, но повечето компилатори ги поддържат в допълнение към стандарта. Днес програмният език на Fortran е доминиращ в програмирането, използвано в инженерните приложения. Ето защо е важно инженерите да имат възможност да четат и променят кода на Fortran. От време на време, така наречените експерти, които прогнозират, че езикът ще загуби своятапопулярност и скоро ще престанат да се използват изобщо. Тези прогнози винаги са били неуспешни. "Fortran" - най-стабилният език за компютърно програмиране в историята. Една от основните причини, поради която езикът за програмиране на Fortran оцелява и оцелява, е софтуерната инерция. След като една компания е похарчила много ресурси и може би милиони долари за софтуерен продукт, е малко вероятно тя да преведе софтуера на друг език.


Основното предимство на Fortran е, че е сертифицирано от международните органи ANSI и ISO. Така че, ако програмата е написана в ANSI, тя ще работи на всеки компютър с компилатора Fortran 77. Това е важна информация. По този начин обектно-ориентираният език за програмиране Fortran съществува на различни софтуерни устройства.

Разлика между езиковите версии

Етапи на създаване на езикова платформа:
  • През 1954-1957 г. първият компилатор е създаден от нулата. В онези дни нямаше "език на високо ниво" (= HLL), повечето операционни системи бяха прости и паметта беше малка, около 16 Kb. Първият компилатор работи на IBM 704. Този език HLL е много по-ефективен от програмирането на асемблер и е много популярен едновременно.
  • През 1958 г. е публикуван FORTRAN II. През същата година е разработен FORTRAN III, но той не е пуснат в широка продукция.
  • През 1961 г. е създаден FORTRAN IV. Той съдържа подобрения, като например прилагането на операторите на ОБЩИ ЕКВИВАЛЕНЦИИ.
  • През 1962 г. Комитетът на ASA започва разработването на стандарт за обектно-ориентирания език за програмиране Fortran. Това позволи на продавачаизползвайте го във всеки нов компютър. И това го направи още по-популярен с HLL, езикът стана достъпен за Apple и TRS80 системите.
  • През 1967 г. FORTRAN 66 е първият в света стандартен HLL. Публикуването на стандарта означава, че езикът се прилага по-широко от всеки друг. До средата на 70-те години практически всеки компютър, мини или мейнфрейм беше снабден със стандартен език FORTRAN 66. Езикът използваше if оператор, goto-statement и spagethi-program. Такова структурирано програмиране стана популярно през 60-те и 70-те години.
  • Fortran съществуваше на перфокарти, по-специално със системата FMS, оптимизирайки местоположението на техните източници, докато Fortran 90 въведе "свободен" синтаксис. В нея кодът на масива Fortran започва с 7-та колона и не трябва да надвишава 72 хиляди знака.
  • Също така трябва да се отбележи, че до Fortran 90 пропуски няма значение между 7-та и 72-та колони. Така цикълът "DO I = 1.5" може да бъде записан и "DOI = 15". От друга страна, "DO I = 15" е еквивалентно на "DOI = 1.5".
    Многобройни индустриални кодекси бяха написани в Nastran, NAG и IMSL - Fortran Library. Съвместимостта на новите версии с предишните е важна. Поради тази причина Fortran 90 е напълно съвместима с Fortran 77. Въпреки това, несъвместимости са въведени в следващите версии на стандарта.
    Fortran 90 и Fortran 95 скоро бяха последвани от текущия стандарт Fortran-2003. С факта, че съвременните компилатори работят неограничено във всички текущи версии на Windows и дори поддържат 64-битови процесори. Междувременно производителите са разпознали тенденцията във времето и предлагат компилатори за Linux под формата на обекториентиран език за програмиране Актьор Фортран.

    Предпоставки за използване на програмния език

    Трябва да се разбере, че Fortran все още е широко използван език за програмиране и се използва главно в областта на откритията. Класически области на приложение, например във физиката или инженерството, където се извършват големи и сложни математически изчисления. Те имат много полезни математически библиотеки, които съществуват за различни компилатори. Обобщавайки, може да се твърди, че днес езикът Fortran е бил използван по редица причини:
  • Наличието на множество функционални библиотеки, които са били разработени в продължение на много години.
  • Наличието на софтуер Fortran, който изисква много важни ресурси за развитие, когато се смята за твърде скъпо за преминаване към друг език.
  • Наличието на мощни компилатори с вградени функции на Fortran, които произвеждат много бързи изпълними файлове.
  • Езикът е по-достъпен за изобретателя, който не е имал специализиран компютърен курс.
  • Много научни програми вече са написани на C и C ++, компилаторите на които са достъпни на повечето машини. Други компилирани езици понякога се използват за научни изчисления и особено за програми като Scilab или Matlab. Последните също включват библиотеките BLAS и LAPACK, разработени в програмирането на Fortran. Първоначално Matlab беше програма във Фортран, разпределена в университети и изследователски центрове.

    Съвременни съставители

    Въпреки че Том Лахий сега е "само" общ компилатор, Lahey Computer Systemsпродължава да се използва от много програмисти. Lahey работи с Fujitsu от няколко години, Lahey се фокусира върху анализатора на Fortran, а Fujitsu е генератор на кодове. Сегашният Compiler Suite за Windows се нарича Lahey Fujitsu Fortran 95 (LF95) и се предлага в различни версии, някои от които са интегрирани и с Visual Studio .NET 2003. Има и евтина версия на LF95 Express без собствена IDE. Текуща версия - 7.1. в Linux се нарича Lahey /Fujitsu Fortran 95 v6.2 компилатор за Linux и се предлага в две различни версии. Например, Pro версията включва OpenMP v2.0 съвместимост с простия графичен двигател Winterbox Starter Kit, Математическата библиотека и Научната библиотека за Fujitsu 2. Другият производител е Absoft. Съставители и C ++ съществуват не само за Windows и Linux, но и за OS X Macintosh. Тези компилатори представляват интерес за разработчиците, които имат нужда или искат да поддържат всичките три платформи. За съжаление, Absoft прави разлика между 32-битови и 64-битови версии на Linux, версия 10.0 на Fortran 95 (за 64-битова Linux).
    Комплектът компилатори EKOPath, който се състои от C ++ компилатори, е сравнително нов за пазара. и средата за разработка на Linux на Fortran, които също се предлагат отделно и предимно за 64-битови AMDusers, а също така работи и на Intel EM64T, както и Microsoft, след като веднъж се опита да намери "евтиния пазар" на Fortran и стартира пазара на Microsoft Powerstation. твърде малък за софтуерния гигант, но Digital взе част от кода през 1997 г. и използва s и работа с компилатори Digital Unix и OpenVMS. Той все още беше много успешна за рождения ден Digital Visual Fortran. В един момент, след това се премества в Digital Compaq, съставител е ревизиран доТекущата версия на Compaq Visual Fortran (CVF) v6.6. В допълнение към "нормалните" 32-битови платформи съществуват различни 64-битови компилатори, например за Intel Itanium и Intel EM64T. Въпреки че не са "спешни" за доставката, те са достъпни за свободно изтегляне чрез системата за уеб поддръжка на Intel Premier. След еднократна, донякъде тромава регистрация, можете да я използвате за една година, като се вземат предвид новите актуализации на всеки няколко седмици. Дори и по-старите версии ще останат достъпни.

    Структура на организационната програма

    Програмата Fortran е поредица от редове от текст. Текстът трябва да следва определен синтаксис. Например: окръжност с радиус r, област c. Тази програма чете реалния радиус и дефинира областта на кръга с радиуса r: write (*, *); „Радиус r:“ се чете (*, *) r; площ = 314159 * r * r; напишете (*, *) 'Area ='; спрете; край. Линиите, започващи с „С“, са коментари и нямат друга цел, освен да направят програмата по-разбираема за хората. Първо, всички програми на Fortran бяха написани с главни букви. Повечето програмисти пишат с малки букви, тъй като са по-четливи. Програмата Fortran обикновено се състои от основна програма или драйвер и няколко рутинни процедури, подпрограми или подпрограми. Структурата на основната програма:
  • името на програмата;
  • декларации;
  • изявления;
  • стоп;
  • край. Подчертано в курсив не трябва да се възприема като буквално, а по-скоро като общо описание. Операторът stop не е задължителен и може да изглежда излишен, тъй като програмата спира, когато при всички случаи достигне своя край, ноПрепоръчително е винаги да завършвате програмата с оператора stop, за да подчертаете, че потокът на изпълнение е спрян.

    Колонни правила

    Fortran 77 не е език на свободен формат, но има много строг набор от правила за форматиране на изходния код. Най-важните правила са правилата за оформление на колони:
  • Col. 1: Празни или "c" или "*" за коментари.
  • Col. 2-5: етикет на оператора.
  • Col. 6: Продължаване на предишния ред.
  • Col. 7-72 одобрения
  • ​​
  • Col. 73 - 80: Пореден номер.
  • ​​Няколко Fortrans, започвайки с буквата "c" или звездичка в първата колона, имат коментар. Коментарите могат да се появят навсякъде в програмата. Добре написани, те са от решаващо значение за четивността на програмата. Търговските кодове на Fortran често съдържат около 50% от коментарите. Можете също така да срещнете програми, които използват удивителен знак (!). Това е много специално изработено във Fortran 77, но е позволено във Fortran 90. Възклицателен знак може да се появи навсякъде по линията. Понякога операторът не се вписва в един ред, след което можете да разделите оператора на два или повече реда и да използвате символа за разширение в позицията. Пример:
  • C23456789 - Това показва позицията на колоната.
  • "C" - следващият оператор преминава два клона на физически линии.
  • Площ = 314159265358979 + * r * r.
  • Празните пространства се игнорират, започвайки с "Fortran 77". Следователно, ако изтриете всички интервали във Fortran 77, програмата все още е синтактично правилна, въпреки че е почти непрочетена за операторите.

    Променливи, типове и декларации

    Имената на променливите във Фортран се състоят от 1-6символи, избрани от букви от a до z и цифри 0-9. Първият знак трябва да е буквата. Fortran 90 позволява имена на променливи с произволна дължина. Fortran 77 не прави разлика между горния и долния регистър, всъщност приема, че всички данни са главни. Въпреки това, почти всички F 77 компилатори ще приемат малки букви. Всяка променлива трябва да бъде посочена в рекламата. Това задава типа променлива. Най-често срещаният списък с променливи е:
  • цяло число;
  • ;
  • двойна точност;
  • комплекс;
  • логично;
  • знак.
  • Списъкът на променливите трябва да се състои от имена, разделени със запетая. Всяка променлива трябва да бъде декларирана точно веднъж. Ако променливата не е декларирана, F 77 използва набор от неявни правила за задаване на типа. Това означава, че всички променливи, които започват с буквата "in" са цели числа, а всички останали са реални. Много от по-старите F77 програми използват тези неявни правила, но програмистите не трябва да правят това, тъй като вероятността от грешки в програмата рязко нараства, ако многократно обявяват променливи. Fortran 77 има само един тип за целочислени променливи. Целите числа обикновено се съхраняват като 32-битови (4 байта) променливи. Следователно, всички целочислени променливи трябва да приемат стойности в диапазона [-m, m], където m е приблизително 2 * 10 9. F 77 има два различни типа за променливи с плаваща точка, наречени реална двойна точност. Някои числени изчисления изискват много висока точност и трябва да се използва двойна точност. Обикновено реална - 4-байтова променлива и двойна точност - 8 байта, но зависи от машината.Нестандартните версии на Fortran използват синтаксиса real * 8, за да определят 8-байтни променливи с плаваща запетая. Някои константи се появяват многократно в програмата. Затова е желателно да се идентифицират само веднъж в началото на програмата. За целта използвайте оператора на параметъра. Това също прави програмите по-четливи. Например програмната област на кръг трябва да бъде написана по следния начин.
    Синтаксис на името на оператора на параметър = константа, име = константа). Правила за оператора на параметри:
  • Променливата, дефинирана в инструкцията за параметри, не е променлива, а константа, чиято стойност не може да се променя.
  • "Променлива" може да показва не повече от един оператор на параметри.
  • Операторът на параметрите трябва да стигне до първата изпълнима
  • Някои добри причини да използва параметъра - помага да се намали броят на грешките, лесно е да се промени константата, която се появява многократно в програмата.

    Логически изрази

    Логическите изрази могат да имат само стойност .TRUE. или и може да се формира чрез сравняване на аритметични изрази с помощта на релационни оператори. Не можете да използвате символи като "Константа и дестинация. Най-простата форма на изразяване е константа." Има 6 вида константи, съответстващи на 6 типа данни. Ето някои целочислени константи: 10-10032767 + 15 Реални константи: 10-0252.0E63333E-1. E-Notation означава, че трябва да се умножи с константа 10, увеличена до мощността до "E". Следователно, 2.0E6 е два милиона и 3333 E-1 е около една трета за константи, които са по-големи оттрябва да се използва максимална реална допустимост или изискваща висока точност. Нотацията е същата като за действителните константи, с изключение на това, че "Е" се заменя с "D". Пример: 2.0 D-11D99. Тук 2.0 D-1 е двойна точност с една пета, докато 1D99 е една, последвана от 99 нули. Следващият тип са сложни константи. Те са обозначени с двойка константи (цели или реални), разделени със запетая, затворени в скоби. Примери за това са: (2 -3) (199 Е-1). Първото число представлява реалната част, а втората представлява въображаемата част. Петият тип са логически константи. Те могат да имат само една от двете стойности: .TRUE. .FALSE. Обърнете внимание, че точките, съдържащи букви, трябва да бъдат изписани. Последният тип е символичните константи. Най-често те се използват като набор от знаци, наречени редове. Те се състоят от произволна поредица от символи, затворници в апостроф (единични кавички): "ABC" "Всичко върви!" "Това е хубав ден" Линейните и символните константи са чувствителни към малки и главни букви. Проблемът възниква, ако трябва да имате истински апостроф в самия ред. В този случай е необходимо да се удвои апострофът: „Това е хубав ден“, което означава „Какъв прекрасен ден“

    Условно одобряващ „ако“

    Важни компоненти на всеки език за програмиране са условни одобрения. Най-често срещаните такива твърдения в Fortran са оператор if, който всъщност има няколко форми. Най-простото е операторът if в описанието на Fortran: if (логическият израз) на изпълним оператор. Това трябва да бъде написано на един ред, например, когато се определя абсолютната стойност на x: if (x .LT. 0) x = -x IfАко трябва да се изпълни повече от един оператор, използвайте следния синтаксис: if (логически израз) thenstatementsendif. Поток на изпълнение от горе до долу. Условните изрази се оценяват последователно, докато се намери истинска стойност. След това се изпълнява съответният код и контролът преминава към следващия оператор след края, ако. Операторите, ако могат да бъдат вложени в няколко нива. За да се гарантира четливост, е важно да се използва правилното отстъп. Ето един пример: ако (x .GT .0) then (x .GE .y) тогава (*, *) 'x е положително и x> = y'elsewrite (*, *)' x е положително, но x Използване Unix операционна система
    \ t
    Можете да използвате всяка Unix работна станция с компилатора F 77. Опитни програмисти препоръчват използването на Sun или Dec. Програмата Fortran се състои от обикновен текст, който следва определени синтаксични правила. Това се нарича изходен код. Програмистите използват редактора, за да пишат изходния код. Най-често срещаните редактори в Unix са emacs и vi, но те могат да бъдат сложни за начинаещи потребители. Можете да използвате по-прост редактор, например xedit, който работи под X-windows. След като програмата Fortran е написана, тя се съхранява във файл с разширение .f или .for и превежда програмата в машинночетима форма. Това се прави с помощта на специална програма, наречена компилатор. Компилаторът Fortran 77 обикновено се нарича f77. В резултат на компилацията се дава малко мистериозно ".out" име по подразбиране, но можете да изберете друго име, ако е необходимо. За да стартирате програмата, просто въведете името на изпълнимия файл,например "a.out". Компилаторът преобразува изходния код в обектния код, а линкерът или зареждащия файл в изпълним файл. Както виждате, тази процедура изобщо не е сложна и е достъпна за всеки потребител.

    Методи за моделиране на производството

    Моделирането е един от най-често използваните методи на производство и други системи, налични в съвременните предприятия. Повечето симулационни модели са изградени с помощта на обектно-ориентирания език за програмиране Actor Fortran или софтуерен пакет за симулация, написан на традиционен език. Тези инструменти имат своите ограничения. Обектно-ориентираната технология все повече се използва в много области и обещава по-гъвкав и ефективен подход към моделирането на бизнес системите. Обектно-ориентираните езици за програмиране Simula Fortran се сравняват с обичайния научен език за програмиране, наречен FORTRAN. Типичен военен симулационен модел е програмиран както в SIMULA, така и във FORTRAN. Програмата SIMULA е с 24% по-къса от FORTRAN версията. Версията на SIMULA също е по-проста и дава по-добра картина на симулирания модел. От друга страна, времето за извършване на производствения цикъл е с 64% повече с обектно-ориентирания език за програмиране Simula Fortran. Претеглянето на плюсовете и минусите показва, че SIMULA ще бъде все по-печеливш, с по-високи разходи за персонал и по-ниски разходи за компютри. CUDA показва как високопроизводителните разработчици на приложения могат да използват възможностите на графичните процесори, използвайки Fortran, познатия език за научниизчисления и тестване на работата на суперкомпютъра. Авторите не предоставят никакъв предишен опит в паралелните изчисления и покриват само основите, както и най-добрите практики. Ефективността на изчислителните графични процесори, използващи CUDA Fortran, се осигурява от архитектурата на целевия графичен процесор. CUDA Fortran за учени и инженери ще определи интензивните изчислителни части на кода и ще промени кода за управление на данните, паралелизъм и оптимизация на производителността. Всичко това се прави във Фортран, без да е необходимо да се пренаписва програмата на друг език. Всяка концепция е илюстрирана с реални примери, така че можете веднага да оцените ефективността на кода. Може би някога глобалната корпорация "най-накрая глобализира" и решава, че "Фортран" вече не е необходим, а не сега. Благодарение на сегашните възможности на днешния Фортран, много програмисти и учени го възприемат като бъдеще. В допълнение, има доста производители в света, които живеят от развитието на съвременни компилатори и печелят много за този процес.

    Свързани публикации