Kod FORTAN: bardzo stary język obliczeń numerycznych

Ujawnienie: Twoje wsparcie pomaga utrzymać działanie witryny! Pobieramy opłatę za polecenie niektórych usług, które zalecamy na tej stronie.


Jeśli masz jakiekolwiek doświadczenie w programowaniu, możesz nauczyć się Fortranu w ciągu kilku godzin. Jest to niezwykle łatwy język, ale bardzo wydajny.

Aby dać ci pojęcie o tej sile, zastanów się nad tym: po raz pierwszy pojawiła się w 1957 roku i jest nadal używana do rozwiązywania najbardziej skomplikowanych problemów współczesnej nauki i inżynierii.

Bardzo krótka historia Fortranu

Aby zrozumieć historię Fortran, musimy wrócić do najwcześniejszych współczesnych komputerów.

Język programowania

W latach czterdziestych wszystkie komputery były programowane w języku asemblera – udzielając komputerowi bezpośrednich instrukcji. Wyobraź sobie na przykład, że chcesz dodać dwie liczby całkowite na najnowocześniejszym komputerze z 1954 r. – IBM 704. Musiałbyś napisać coś takiego (pdf):

CLA 100
DODAJ 101

CLA nakazuje komputerowi wyczyszczenie rejestru akumulatorów i dodanie do niego wartości przechowywanej w pamięci 100. Następnie polecenie ADD nakazuje komputerowi dodanie wartości przechowywanej w pamięci 101 do wartości przechowywanej w rejestrze akumulatorów.

Jest to już skomplikowane i nawet nie dyskutowaliśmy, jak przechowywać wartości w lokalizacjach pamięci 100 i 101!

Wpisz FORTRAN

Oczywiście tego rodzaju kodowanie jest pracochłonne i niezwykle podatne na błędy. Tak więc pod koniec 1953 r. – krótko przed wydaniem IBM 704 – informatyk John W Backus przedstawił propozycję stworzenia języka wysokiego poziomu, który pozwoliłby programistom pisać proste stwierdzenia, takie jak I = 10 + J.

Następnie kompilator mógłby przekonwertować to na wiele wierszy języka asemblera wymaganego przez komputer. Pod koniec 1956 roku wydano pierwszą instrukcję FORTRAN (pdf). A sześć miesięcy później wydano pierwszy kompilator do konwersji Fortrana na język asemblera.

FORTRAN nie był pierwszym językiem programowania wysokiego poziomu. Ale był to pierwszy szeroko stosowany. I są ku temu dobre powody.

Fortran Evolution

Chociaż pierwszy kompilator Fortran został wydany w 1957 roku, język nadal się rozwijał i ewoluował.

FORTRAN II

Wydany w 1958 r. FORTRAN II wprowadził podprogramy i funkcje. Były to kluczowe narzędzia, ponieważ pozwoliły na opracowanie dobrze ustrukturyzowanego kodu.

Te funkcje pozwoliły programom wywoływać te same bloki kodu, które mają być wywoływane wiele razy, bez powtarzania kodu lub korzystania z wywołań GOTO. Główne różnice między tymi dwiema rzeczami polegają na tym, że podprogramy nie zwracają zmiennych tak jak funkcje.

FORTRAN IV / FORTRAN 66

FORTRAN IV był bardzo ważnym kamieniem milowym. W szczególności usunął funkcje zależne od maszyny i wprowadził do języka funkcje logiczne (boolowskie).

Ale FORTRAN IV był ważniejszy, ponieważ stał się mniej więcej standardowym FORTRANEM dla społeczności programistów. Stało się tak głównie dlatego, że FORTRAN 66 został wydany zaraz po FORTRAN IV.

FORTRAN 66 był pierwszą wersją, która zawiera oficjalną wersję American National Standards Institute (ANSI).

FORTRAN 77

Ze względu na czas, FORTRAN 77 to wersja, o której myśli większość ludzi, gdy myśli o języku. Dodał szereg ważnych funkcji.

Na przykład, chociaż FORTRAN IV miał instrukcje IF (w tym trójstronne instrukcje IF), dopiero w FORTRAN 77 dozwolone były funkcje ELSE i ELSE IF. To także znacznie zaawansowane możliwości we / wy plików i przetwarzania znaków.

Fortran 90

Stanowiło to ogromną zmianę języka, o czym świadczy po prostu fakt, że nazwa języka nie była już drukowana wielkimi literami. Umożliwiło pisanie poleceń Fortran małymi literami i zaimplementowało dowolne źródło danych wejściowych.

Ale zaimplementowano także o wiele bardziej zaawansowane funkcje, takie jak przeciążanie operatora. Jednocześnie nie usunął żadnych funkcji, dzięki czemu programy Fortran 77 nadal działały dokładnie tak, jak wcześniej.

Fortran 2015

Od czasu Fortran 90 wprowadzono wiele aktualizacji języka: Fortran 95, Fortran 2003, Fortran 2008 i nadchodzący Fortran 2015. Wszystkie są drobnymi aktualizacjami.

Od czasu Fortran 90, a nawet FORTRAN 77, nic istotnego się nie wydarzyło, ponieważ jego kod nadal generalnie kompiluje się bez zmian.

Dlaczego ludzie używają Fortranu?

Jeśli chcesz wykonać obliczenia numeryczne, naprawdę nie ma lepszego języka. Ponieważ jest już tak długo, kompilatory Fortran zostały zoptymalizowane do wykonywania obliczeń.

Ale być może najlepszym powodem do korzystania z Fortran jest to, że istnieje ogromna ilość istniejącego kodu dla rzeczy, które programiści naukowi robią cały czas.

Rozważ to: Przepisy numeryczne: Sztuka obliczeń naukowych od dziesięcioleci jest niezbędną książką dla wszystkich programistów naukowych. Kiedy ukazał się po raz pierwszy w 1986 roku, został napisany ze wszystkimi przykładami Fortrana.

Na okładce nie wspomniano o tym fakcie. To było po prostu założone. Trzy lata zajęło wydanie specjalnej książki z kodem Pascal. Upłynęło sześć lat, zanim pojawiła się wersja C..

Co sprawia, że ​​Fortran jest tak łatwy?

Basic Fortran robi tylko proste rzeczy. Wszystkie aspekty, takie jak pętle i instrukcje „jeśli-to” są tak zintegrowane z innymi językami, że jest mało prawdopodobne, abyś miał problemy z ich odczytaniem.

Jedyną rzeczą, która może być nieco trudna, jest to, że Fortran wymaga wysoce ustrukturyzowanego formatu wejściowego – a przynajmniej Fortran 66 i Fortran 77 tak. Fortran 90 i nowsze wersje są znacznie bardziej elastyczne.

Ale jeśli pracujesz z Fortranem, istnieje szansa, że ​​będziesz miał do czynienia ze starszymi wersjami kodu.

Przykład Fortran 77

sekwencja programu
c Linie zaczynające się na c (lub *) są komentarzami
* Ten program wydrukuje prostą serię arytmetyczną
liczba całkowita n, i
n = 0
do 10 i = 1, 5
n = n + i
pisać(*,*) "The ", ja, "numer w tej serii "
+"jest: ", n
10 kontynuuj
zatrzymać
koniec

Można tutaj zauważyć kilka rzeczy:

  • Zwykły kod musi zaczynać się od siódmej kolumny (czyli z sześcioma spacjami przed nią).

  • Jeśli „c” lub „*” zostanie umieszczone w pierwszej kolumnie, jest to komentarz i nie jest kompilowany.

  • Kolumny 1-5 mogą być używane do etykiet instrukcji – podobnie jak w starym stylu BASIC.

  • Jeśli znak zostanie umieszczony w kolumnie 6, oznacza to, że kod z poprzedniego wiersza jest kontynuowany. Jest to ważne, ponieważ instrukcje można umieszczać tylko od 7 do 72 kolumny.

Dane wyjściowe powinny być dość wyraźne:

Liczba 1 w tej serii to 1
Liczba 2 w tej serii to 3
Liczba 3 w tej serii to 6
Liczba 4 w tej serii to 10
Liczba 5 w tej serii to 15

Uczenie się Fortran

Masz kilka alternatywnych sposobów uczenia się Fortran.

Poradniki Fortran

Fortran jest naprawdę bardzo prostym językiem do nauki, jeśli wszystko, co musisz zrobić, to tworzyć programy do rozwiązywania problemów numerycznych. Oczywiście nie jest to wybór osób piszących graficzne interfejsy użytkownika.

Ale dla naukowców i inżynierów Fortran jest często najlepszym narzędziem do tego zadania. Dzięki tym samouczkom prawdopodobnie będziesz w stanie przygotować własne przydatne programy w ciągu kilku godzin.

  • Samouczek FORTRAN 77: samouczek Uniwersytetu Stanforda, który pokazuje wszystko, co musisz wiedzieć, aby rozpocząć kodowanie FORTRAN 77. A jeśli znasz FORTRAN 77, powinieneś być w stanie korzystać z dowolnego nowoczesnego kompilatora Fortran.

  • 7 lekcji z Fortran 90/95: jeśli chcesz zacząć od nowszego standardu i nie musisz się martwić o rygorystyczne formatowanie wymagane we wcześniejszych wersjach, to jest miejsce, aby zacząć. Oferuje również instrukcję w formacie PDF, której można użyć zamiast tego.

  • Wprowadzenie i Basic Fortran: Fortran w starym stylu z wieloma przykładami.

  • Samouczek Fortran: samouczek Point samouczki przy użyciu kompilatora G95 Fortran.

  • Programowanie w FORTRAN: bardzo podstawowe wprowadzenie do FORTRAN 77, ale prawdopodobnie wszystko, czego naprawdę potrzebujesz.

Książki Fortran

Istnieje zaskakująca liczba książek o języku programowania Fortran. Możesz znaleźć te najszybszy i najłatwiejszy sposób na rozpoczęcie pracy z językiem.

  • Fortran Programming Success in a Day autorstwa Sam Key: krótka książka spełniająca obietnicę tytułu.

  • FORTRAN 90/95 dla naukowców i inżynierów autorstwa Stephena J Chapmana: dokładne wprowadzenie do współczesnego programowania Fortran z naciskiem na jego zastosowanie w nauce.

  • Migracja do Fortran 90 autorstwa Jamesa Kerrigan: książka, dzięki której ludzie, którzy znają stary styl Fortran, uruchomią Fortran 90. Jest to również doskonały odnośnik.

Kompilatory Fortran

Dostępnych jest wiele kompilatorów. Zobacz listę kompilatorów Fortran w Wikipedii. Kilka zasługuje na specjalną dyskusję:

  • GNU Fortran: oficjalny kompilator Fortran (zgodny z Fortran 95), który jest częścią kolekcji kompilatorów GNU.

  • G95: darmowy kompilator Fortran 95, który jest w fazie rozwoju i implementuje części Fortran 2003 i 2008.

  • MinGW: port kolekcji kompilatora GNU (w tym Fortran) do tworzenia aplikacji Microsoft Windows.

Narzędzia Fortran

  • F2c: prosty program i biblioteka do konwersji programów Fortran na C. Jest to przydatne dla programistów C i C ++, którzy muszą używać istniejącego kodu Fortran, ale nie chcą zawracać sobie głowy językiem.

  • Narzędzia, biblioteki i oprogramowanie Fortran: lista narzędzi i bibliotek firmy Fortran (najbardziej darmowa) do pomocy programistom Fortran. Zawiera rzeczy takie jak biblioteki graficzne.

  • Po prostu Fortran: niedrogi kompilator oparty na systemie Linux i Windows, który obejmuje zintegrowane środowisko programistyczne i debugger.

  • Modern Fortran: Styl i wykorzystanie autorstwa Clermana i Spectora: książka, która pomaga naukowcom koderów w wydajnym korzystaniu z Fortrana.

  • Przepisy numeryczne w Fortran 77: Sztuka obliczeń naukowych: wciąż najlepsze źródło najważniejszych algorytmów.

Wniosek

Mimo że jest bardzo stary, Fortran pozostaje cennym narzędziem dla programistów – szczególnie tych, którzy pracują w nauce i inżynierii. Jednocześnie jest to łatwy w użyciu język. Więc jako pierwszy język lub inne narzędzie do dodania do swojego arsenału warto sprawdzić.

Jeffrey Wilson Administrator
Sorry! The Author has not filled his profile.
follow me
    Like this post? Please share to your friends:
    Adblock
    detector
    map