close

Fortran

Navigasyona git Aramaya git
Fortran
Fortran logosu.svg
IBM ve John Backus
https://fortran-lang.org
Genel bilgi
Ortak Uzantılar f, için ve f90
Ortaya çıkan 1957
Tarafından dizayn edilmiştir John Backus
tarafından etkilenmiş hız kodlaması

Fortran (önceden FORTRAN , [ 1 ]​ İngilizcenin kısaltılmış hali , The IBM Mathematical For mula Tran slating System ) genel amaçlı, [ 2 ]​ prosedürel [ 3 ] ​, özel olarak uyarlanmış , zorunlu üst düzey bir programlama dilidir. sayısal hesaplama ve bilimsel hesaplama . İlk olarak 1957 yılında IBM tarafından IBM 704 bilgisayarı için geliştirilen ve bilimsel ve mühendislik uygulamaları için kullanılan FORTRAN, bu programlama alanına erkenden hakim oldu ve hesaplama açısından yoğun alanlarda yarım yüzyıldan fazla bir süredir sürekli kullanımda. sayısal hava tahmini , sonlu eleman analizi , hesaplamalı akışkanlar dinamiği (CFD), hesaplamalı fizik ve hesaplamalı kimya olarak . Yüksek performanslı bilgi işlem alanında en popüler dillerden biridir ve performansı ( benchmark ) ve dünyadaki en hızlı süper bilgisayarların sıralamasını değerlendiren programlar için kullanılan dildir . [ 4 ]

FORTRAN, genellikle önceki sürümlerle uyumluluğu korurken, her biri dile uzantılar eklemek için geliştirilen bir dizi sürümü kapsar. Ardışık sürümler, karakter tabanlı veri işleme (FORTRAN 77), dizi programlama , modüler programlama ve nesne yönelimli programlama (Fortran 90/95) ve genel programlama (Fortran 2003) için destek ekledi.

Tarih

Image
1-5, 6 ve 73-80 sütunlarının özel kullanımını gösteren, delikli bir kart üzerindeki FORTRAN kodu .

1953 sonlarında John W. Backus , IBM 704 ana bilgisayarını programlamak için montaj diline daha pratik bir alternatif geliştirmek için IBM'deki üstlerine bir teklif sundu . Backus'un tarihi FORTRAN ekibi, programcı Richard Goldberg, Sheldon F. Best, Harlan Herrick, Peter Sheridan, Roy Nutt, Robert Nelson, Irving Ziller, Lois Haibt ve David Sayre'dan oluşuyordu. [ 5 ]

1954 ortalarında IBM Mathematical Formula Translating System için bir taslak belirtim tamamlandı . İlk FORTRAN kılavuzu Ekim 1956'da ortaya çıktı, çünkü müşteriler , derleyicisi, performansı el yazısı derleme dili koduyla karşılaştırılabilir kod üretemediği sürece, üst düzey bir programlama dili kullanmak konusunda isteksizdi .

Topluluk bu yeni dile şüpheyle yaklaşırken, bir makineyi çalıştırmak için gereken programlama ifadelerinin sayısını 20 kat azalttı ve hızla kabul gördü. IBM'in çalışan dergisinin yaratıcısı John Backus, 1979'da Think ile yaptığı bir röportajda, "Çalışmalarımın çoğu tembellikten geldi. Program yazmayı sevmiyordum ve bu nedenle, füze hesaplamak için IBM 701 yazma programları üzerinde çalışırken Program yazmayı kolaylaştırmak için bir programlama sistemi üzerinde çalışmaya başladım. [ 6 ]

Dil, bilim adamları tarafından sayısal olarak yoğun programlar yazmak için yaygın olarak benimsendi ve bu da derleyici yazarlarını daha hızlı ve daha verimli kod üretebilecek derleyiciler üretmeye teşvik etti. Dile bir veri türü ve karmaşık sayı aritmetiğinin dahil edilmesi , dilin özellikle uygun olduğu uygulama yelpazesini genişletti ve FORTRAN'ı elektrik mühendisliği gibi teknik uygulamalara özellikle uygun hale getirdi.

1960 yılına gelindiğinde, FORTRAN sürümleri IBM 709 , 650 , 1620 ve 7090 bilgisayarları için mevcuttu . FORTRAN'ın artan popülaritesi, rakip bilgisayar üreticilerini makineleri için FORTRAN derleyicileri sağlamaya önemli ölçüde teşvik etti, böylece 1963'te 40'tan fazla FORTRAN derleyicisi vardı. Bu nedenlerden dolayı FORTRAN, çeşitli bilgisayar mimarilerinde desteklenen ilk yaygın olarak kullanılan programlama dili olarak kabul edilir.

FORTRAN'ın gelişimi, derleyici teknolojisinin erken evrimine paraleldi. Aslında, derleyici teorisi ve tasarımındaki birçok ilerleme, özellikle FORTRAN programları için verimli kod üretme ihtiyacıyla motive edildi.

Sürümler

Diğer bazı sonraki sürümler şunlardı:

  • FORTRAN I
  • FORTRANII
  • FORTRAN IV
  • 66
  • 77
  • 90
  • 95
  • 2003
  • 2008
  • 2018

Ana özellikler

Dil, programların 80 sütunlu delikli kartlara yazılacağı akılda tutularak tasarlandı. Bu nedenle, örneğin, satırların numaralandırılması gerekiyordu ve yürütme sırasındaki olası tek değişiklik goto komutuyla yapıldı . Bu özellikler sürümden sürüme gelişmiştir. Mevcut olanlar alt programlar, özyineleme ve çeşitli kontrol yapıları içerir .

Sözdiziminin avantajları ve dezavantajları

Üst düzey bir programlama dili yaratmaya yönelik ilk girişim olduğu için, daha modern diller öğrenen birçok programcı tarafından arkaik kabul edilen bir sözdizimine sahiptir. Bir "for" döngüsü yazmak zordur ve tek bir karakterin yazılmasındaki hatalar, en yaygın yapılar kullanılmazsa, derleyici hatalarından ziyade çalışma zamanı hatalarına yol açabilir. Bazı eski sürümler, dinamik bellek ayırma gibi çok kullanışlı olduğu düşünülen özelliklere sahip değildi.

Fortran sözdiziminin sayısal ve bilimsel çalışmalarda kullanılmak üzere tasarlandığına dikkat edilmelidir. Eksikliklerinin çoğu, son dil revizyonlarında ele alınmıştır. Örneğin, Fortran 95, matris matematiği gerçekleştirmek için çok daha kısa komutlara sahiptir ve türleri vardır. Bu, yalnızca programın okunabilirliğini büyük ölçüde geliştirmekle kalmaz, aynı zamanda derleyiciye faydalı bilgiler sağlar.

Bu nedenlerden dolayı Fortran, bilimsel alanlar ve sayısal analiz dışında pek kullanılmaz, ancak yüksek performanslı sayısal hesaplama uygulamaları geliştirmek için tercih edilen dil olmaya devam etmektedir.

Özellikler

Dilin iki standartlaştırılmış versiyonu vardır.

  • ANSI X3.198-1992 (R1997). Başlık: Programlama Dili "Fortran" Genişletilmiş . Fortran 90 olarak bilinir. ANS.l tarafından yayınlanan bir standarttır. .
  • ISO/IEC 1539-1:1997. Başlık: Bilgi teknolojisi - Programlama dilleri - Fortran - Bölüm 1: Temel dil . Fortran 95 olarak bilinir. Ayrıca ANSI tarafından da benimsenmiştir .

Aşağıda, bir dizi verinin doğrusal bir uyum veya regresyonunu gerçekleştirmeye izin veren bir programın Fortran dilindeki kaynak kodu verilmiştir:

 LİNEER REGRESYON . FORTRANS 
UYGULAMA 
     BOYUTU SÜRESİ ( 1000 ), ÜRÜN ( 1000 ) AÇIK ( 1 , DOSYA = ' HISTORY.txt ' ) I = 0 10 OKUMA ( 1 , * , END = 80 ) T , P I = ​​​​I + 1 ZAMAN ( .l . ) = T PROD ( I ) = P 10'A GİT 80 NDATA = ADJULIN ÇAĞIRIM ( TIME , PROD , NDATA , A , B ) YAZ ( * , 90 ) A , B 90 FORMAT ( ' DENKLEM :Y =' , F10 .2 , ' +' , F10 .2 , ' X ' ) 20 FORMAT ( 20 F10 . 0 ) SON
        
        
      
        
        
        
          
      
        
        
      
      
        

ALT YÖNTEM AJULIN         ( X , Y , N , A , B ) BOYUT 
         X ( 1 ) , Y ( 1 ) 
          TOPLA = 0. 
          TOPLA = 0. 
          TOPLA2 = 0. 
          SUMY2 = 0 
          TOPLA = 0 
        DO 20  I = 1 , N 
         TOPLA = TOPLA + X (. l .) 
         SUMY = SUMY + Y (. l .) 
         TOPLA2 = TOPLA2 + ( X ( I ) * X (. l .)) 
         SUMY2 = SUMY2 + Y ( I ) ** 2 
         TOPLA = TOPLA + ( X ( I ) * Y ( I ) ) 
 20     DEVAM 
ÜRETİM = TOPLA * SUMY B = ( TOPLA - PROD / N ) / ( TOPLA - TOPLA ** 2 / N ) A = ( SUMY / N - B * TOPLA / N ) DÖNÜŞ        SONU        
        
        
       

Temel olarak, programda bir ASCII dosyasından belirli sayıda sıralı çift okunur, en küçük kareler yöntemini kullanarak karşılık gelen uygun çizgiyi hesaplayan ve ardından söz konusu satırın katsayılarını veya parametrelerini sağlayan bir rutin çağrılır. .

Referanslar

  1. FORTRAN 77'den önceki sürümlerin adları geleneksel olarak tamamı büyük harflerle yazılır (FORTRAN 77, anahtar sözcüklerde küçük harf kullanımının kesinlikle standart dışı olduğu sürümdü). Fortran 90 ile başlayan daha yeni sürümlere atıfta bulunulan büyük harf kullanımı kaldırıldı. Resmi dil standartları artık dili "Fortran" olarak adlandırıyor. FORTRAN kelimesinin büyük harf kullanımı (veya eksikliği) gerçek kullanımda hiçbir zaman %100 tutarlı olmadığından ve birçoğunun konuyla ilgili tutkulu inançlara sahip olması nedeniyle, bu makale normatif olmaya çalışmaktan ziyade, büyük harfleri kullanma geleneğini benimser. FORTRAN , FORTRAN 77 ila FORTRAN sürümlerine atıfta bulunur ve Fortran başlığı , Fortran 90'dan sonraki Fortran sürümlerine atıfta bulunur. Bu kural, ANSI X3.9-1966 ( FORTRAN 66) ve ANSI X3.9-1978 (FORTRAN 77) standartlarında FORTRAN'ın büyük harf kullanımında ve ANSI X3.198-1992'de (Fortran 90) Fortran başlık başlıklarında yansıtılır. , ISO/IEC 1539-1:1997 (Fortran 95) ve ISO/IEC 1539-1:2004 (Fortran 2003) standartları.
  2. Veri türünü tanıtan FORTRAN 77'den beri .CHARACTER
  3. FORTRAN II'den (1958) beri.
  4. http://www.top500.org/project/linpack
  5. http://www.softwarepreservation.org/projects/FORTRAN/index.html#By_FORTRAN_project_members
  6. Fortran yaratıcısı John Backus öldü - Gadget'lar - MSNBC.com

Dış bağlantılar

Programlama kaynakları