Jeofizikte Bilgisayar Uygulamalari - PowerPoint PPT Presentation

1 / 25
About This Presentation
Title:

Jeofizikte Bilgisayar Uygulamalari

Description:

FORTRAN Programlama Dili Programlama ve Temel Kavramlar Program; Bilgisayara ne yapmas gerekti ini bildiren komutlar (Kod, Deyim) toplulu una verilen isimdir. – PowerPoint PPT presentation

Number of Views:131
Avg rating:3.0/5.0
Slides: 26
Provided by: MustafaK6
Category:

less

Transcript and Presenter's Notes

Title: Jeofizikte Bilgisayar Uygulamalari


1
Jeofizikte Bilgisayar Uygulamalari
  • FORTRAN Programlama Dili

2
Programlama ve Temel Kavramlar
  • Program Bilgisayara ne yapmasi gerektigini
    bildiren komutlar (Kod, Deyim) topluluguna
    verilen isimdir. Bu komutlari veren kisiye
    Programci, komutlarin tamamina ise Programlama
    dili denir.
  • Herhangi bir dil bilen bir programci ile
    bilgisayar (Makine dili biliyor) arasindaki
    iletisimin gerçeklesmesi Birbirleri ile farkli
    dilleri konusan iki yabanci kisinin (Ingilizce ,
    Türkçe vb.) bir araya gelip görüsmesine
    benzetilebilir. Bu görüsme ancak bir çevirmen
    araciligi ile gerçeklesebilir. Benzer sekilde
    bilgisayar üreticileri ayni sorunu programcinin
    dilini bilgisayarin makine diline çevirecek
    Derleyici Programlar gelistirerek
    çözmektedirler.

3
DERLEYICI VE YORUMLAYICI KAVRAMLARI
  • Yazilan programlari makine diline çeviren, makine
    dilinde elde edilen sonuçlari bizlerin
    anlayabilecegi biçime dönüstüren programlara
    Derleyici veya Yorumlayici denir.
  • Kaynak komutlarin makine diline çevrilmesi

Derleyici (Compiler) Yorumlayici (Interpreter)
Kaynak Program
Makine Dili
Ikili sayi (BInary digiT-BIT) formatindaki
gösterime makine dili denir. Mantiksal olarak 1
var, 0 yok anlamindadir. Sayisal sistemler
ikili mantiga göre çalisirlar.
4
  • Derleyici Bir programlama dili ile yazilmis olan
    programi makine dilini kullanarak amaçladigimiz
    programa dönüstürür.
  • Derleyicinin çevirme islemi genellikle üç adimdan
    olusur
  • 1. Sözel Analiz (Lexical Analysis)
  • 2. Yazim Hatasi Analizi (Syntax Analysis)
  • 3. Kod üretimi (Code Generator)

5
  • Sözel Analizde kaynak kodlarini olusturan
    kelimler incelenip bu kelimelerin kaynak dilinde
    karsiliklari olup olmadiklari kontrol edilir,
  • Yazim hatasi analizinde kaynak kodlarinin
    yazildigi programlama dilinin kendi kurallari
    içerisinde dogru yazilip yazilmadigi kontrol
    edilir.
  • Kod üretimi asamasinda ise tanimi yapilan
    komutlara karsilik gelen makine dili komutlari
    üretilir.
  • Bu adimlar birbirine paralel olarak
    gerçeklestirilir ve kaynak komutlar amaçlanmis
    olan koda çevrilmis olur.

6
  • Yorumlayici Program komutlarinin ilk satirindan
    son satirina kadar belirtilmis olan deyim ve
    islemleri inceleyerek kaynak programin
    hatalarinin düzeltilmesine olanak veren ve
    çalismasini saglayan programdir. Herhangi bir
    komut satirinin çalistirilmasinda bir hata ile
    karsilastiginda çalismayi durdurur ve hatali olan
    satiri programciya bildirir.
  • Derleyici ile Yorumlayicinin Farki
  • Derleyici programin tamamini kontrol eder,
    herhangi bir satirinda hata varsa program
    satirlari bittikten sonra hatayi gösterir. Yani
    kaynak kodu bir defa çevirir. Yorumlayici ise
    programin herhangi bir satirinda hata varsa
    çalisirken hatali olan satira geldiginde durur ve
    hata mesaji verir. Hata düzeldikten sonra tekrar
    birinci satirdan itibaren kodu çevirir.

7
PROGRAMLAMA DILLERI
  • 1.1. Makine Dili ile Kodlama
  • Problemimiz öncelikle, bilgisayarin özellikleri
    ve mevcut komutlarla yapabilecegi islemler dizisi
    biçiminde ifade edilir daha sonra programci
    tarafindan bu, bilgisayarin makine dilinde
    yazilir. Makine dilinde yazilan bu program
    gerekli veri ile birlikte, bilgisayarca dogrudan
    uygulanabilir ve aranan sonuçlar bulunur. Ancak
    makine dili ile programlamada bazi önemli
    güçlükler ortaya çikmaktadir. Tüm komutlarin
    makine dili ile kodlanmasi komutlarin makine
    tarafindan uygulandigi sirada yazilmasi ve
    yanlislikla ya da baska bir nedenle bazi komutlar
    atlanmissa, bundan sonraki bütün komutlarin araya
    eklenenler için ötelenmesi ve adreslemenin
    yenilenmesi zorunlulugubütün program
    düzenlemesinin programci tarafindan yapilmasi
    programcinin kullandigi bilgisayari çok iyi
    anlamis olma geregi bu güçlüklere örneklerdir.

8
1.2. Programlama Sistemleri
  • Programlama sistemleri genel olarak derleyici
    programdan olusur (bir programlama dili ve bir
    birlestirici). Programlama dili, programci
    tarafindan kolayca ögrenilebilecek ve
    yazilabilecek, bilgi islem sisteminin yapim
    özellikleri ve yapilacak islemler arasinda
    uzlasma saglayabilecek bir sekilde olmalidir. Bu
    dil içinde, diger herhangi bir dildeki gibi,
    dilbilgisi, noktalama ve yazma kurallari olacagi
    açiktir.
  • Bir bilgisayarda programlama sistemlerinin
    (derleyicilerin) bulunmasi makine dilinde
    programlamanin güçlüklerini büyük ölçüde azaltir.
    Birlestirici program ve derleyiciler,
    programlarin makine dili disinda probleme
    yönelmis bir dilde hazirlanabilmesi olanagini
    saglar.
  • Programlama dilinde makine diline çeviriyi,
    birlestirici ya da derleyici araciligi ile,
    bilgisayarin kendisi yapmaktadir.

9
1.3. Sembolik Programlama Sistemleri
  • Sembolik programlama sistemleri, programciyi
    makine dili ile kodlamanin güçlüklerinden büyük
    ölçüde kurtarmaktadir ancak, belli bir
    bilgisayara göre hazirlandiklarindan ve sistemin
    programlama dilinin kismen makineye yönelik
    olmasindan dolayi makine dili düzeyinde çalisan,
    ögrenilmeleri oldukça uzun süren sistemlerdir ve
    her bilgisayar için farklidir, diger bir deyisle
    makineye bagimlidir dolayisyla her bilgisayarda
    ayni dil kullanilamamaktadir.

10
1.4. Probleme Yönelmis Diller ve Derleyiciler
  • FORTRAN, COBOL, PASCAL, ALGOL, C, C, vb.
    programlama sistemlerine bazi örneklerdir. Bu tür
    programlama sistemleri ile çalismada, temel
    programin derleyici program araciligi ile
    bilgisayarca, belli kurallara uyarak makine dili
    programina çevrilmesine derleme denir. Derleme
    sirasinda rastlanan dil kurallarina aykiri olan
    hatalar özel hata mesajlari ile bilgisayarca
    programciya bildirilir.
  • Probleme yönelmis dillerin en önemlilerinden
    biri, bilimsel ve mühendislik arastirma ve
    uygulamalari için gelistirilen ve en yaygin
    olarak kullanilan FORTRAN dilidir. FORTRAN adi,
    formül çevirisi anlamindaki, Ingilizce "FORmula
    TRANslation" kelimelerinin ilk hecelerinden
    olusur. FORTRAN dili sayisal hesapla ilgili
    herhangi bir problemin kolaylikla ifade
    edilebilmesini saglayacak biçimde düsünülmüstür.
    Komutlar ya da deyimler herhangi bir güçlük
    olmaksizin anlasilabilir ve yorumlanabilir. Bazi
    deyimler problemin matematiksel bagintilarina çok
    benzer.

11
Tarihçe
  • IBM'de çalisan John W. Backus ve ekibi 1953
    yilinin sonlarinda, assembler diline alternatif
    olarak IBM 704 ana-bilgisayarinda daha verimli
    çalibilecek bir programlama dili önermisler,
    "The IBM Mathematical FORmula TRANSslating
    System" isimli 32 deyim içeren ilk Fortran
    derleyicisini gelistirmisler ve 1957 yilinda
    dagitimina baslamislardir
  • Takip eden yillarda yeni sürümler geliserek,
    1958'de FORTRAN II ve FORTRAN III, 1961'de
    FORTRAN IV, 1966'da FORTRAN 66 1977'de FORTRAN 77
    derleyicileri kullanima sunulmustur. Uzun bir
    süre sonra, bir çok önemli degisiklikler yapilmis
    ve ANSI 1992 standardi ile tescillenmis hali ile
    Fortran 90 sürümü olusturulmustur. Hemen
    ardindan, birkaç küçük degisiklikle Fortran 95
    gelistirilmistir. Fortran 90/95 sürümlerinde
    nesne tabanli özellik kazanmistir. Daha sonralari
    nesneye dayali (object-oriented) ve genel
    programlama (generic-programming) özellikleri
    eklenerek Fortran 2003 standardi belirlenmistir.
    2008 yilinda da "Co-Array Fortran" özelligi ile
    paralel islem (parallel processing) yetenegi
    kazanmistir.

12
IBM 704
IBM 360
13
Neden Fortran?
  • Fortran, sayisal hesaplamada güçlü ve yeterince
    esnek bir dildir.
  • Fortran, tanimlayici adlari küçük-harf büyük-harf
    ayrimi yapmaz (case insensitive). Yani Tablo veya
    tablo veya TABLO degisken adlari ayni degiskeni
    temsil eder.
  • Fortran, basit bir yapisi oldugu için,
    programlama giris iyi bir dildir.
  • Fortran, farli platformlada derleyicilere
    sahiptir.
  • Fortran, özel veri tipi tanimlamasina izin verir.
  • Fortran, diger dillerde olamayan esnek kütüphane
    fonksiyonlarina sahiptir.
  • Fortran, sayisal hesaplamada C/C, Java ve
    görsel programlama dillerinden daha güçlü ve
    hizlidir.

14
2.1. GIRIS
  • Program bir komutlar ( deyimler ) dizisidir ve
    herhangi bir problemin çözümü için kullanilan
    hesap düzenini tanimidir . Çözümde bir
    bilgisayardan yararlanilacaksa , programin
    bilgisayar özellilerine uygun bir programlama
    dili ile yazilmasi gerekir . Bilgisayar ,
    programdaki komutlari aksi belirtilmedikçe ,
    yazildigi sirada yerine getirir . Gereginde
    program bir komutlar kümesinin belli düzende
    tekrarlanmasini yada duruma göre belirli
    dallanmalari saglayacak özel komutlarda
    içerebilir böylece programi kisaltmak mümkün
    olur .
  • FORTRAN programlama dili oldukça basittir ve
    normal matematik diline çok yakindir. FORTRAN
    sistemi , FORTRAN dili ve FORTRAN derleyicisinden
    olusur .

15
2.2. SAYILAR
  • Bilimsel çalismalarda, mühendislik arastirmalari
    ve uygulamalarda yapilan hesaplarin çogunda
    degisik büyüklükte sayilarla çalisilir .
    Güvenilir sonuçlar elde edilmesi için bu
    hesaplarda mümkün oldugu kadar çok anlamli rakami
    olan sayilarla çalisilmasi gerekir .
  • Sabit kelime uzunluklu ve degisken kelime
    uzunluklu bilgisayarda bir sayinin gösterilmesi
    için bellekte sabit sayida pozisyon ayrilir . Bu
    sabit pozisyon sayisina incelik veya hassasiyet(
    prezisyon ) denir .
  • Sayilar ikiye ayrilir tam sayilar , gerçel
    sayilar .
  • Tam sayilar desimal noktasi olmayan sayilardir .
    Bunlarin büyüklük sinirlari bilgisayar
    özelliklerine baglidir .
  • Gerçel sayilar ise desimal noktali ondalik
    sayilardir . Gerçel sayilarin bilgisayar
    belleginde saklanmasindan önce bilgisayarca sayi
    düzenlenir . Diger bir deyisle desimal nokta
    sayinin sifirdan farkli en önemli rakamin soluna
    kaydirilir ve gerekli düzeltme 10 un üsleri
    seklinde sayinin yanina yazilir . Düzenlenmis
    sayinin kesirli kismi mantis , desimal noktanin
    kaydirildigi hane sayisina üs denir . Gerçel
    sayilarin büyüklük sinirlari da bilgisayar
    özelliklerine baglidir

16
2.3. Fortran Aritmetigi
  • Bilgisayarla yapilan hesaplarda isleme giren
    büyüklüklerin tamsayi yada gerçel sayi olmasi ,
    islemlerin yapilisi ve sonuçlar yönünden büyük
    farkliliklar gösterir .
  • Tamsayi aritmetigi, tamsayilarla yapilan islemler
    anlamindadir her islemin sonucu da tamsayi
    olacak biçimde kesilir, yuvarlatma yapilmaz .
    Kesme islemi öncelik sirasina göre yapilan bütün
    islemler için söz konusudur . Bu nedenle bu tür
    aritmetik islemlerin yapilis sirasi ve
    parantezler çok önemlidir . Tamsayilar
    programlarda eleman numarasi , indis, vb. amaçlar
    için kullanilir . Aritmetik islemler çogunlukla
    gerçel sayilarla yapildigindan tamsayi
    artimetiginin bu özelligi bir sakinca degildir .
  • Gerçel sayi aritmetigi , gerçel sayilarla yapilan
    islemler anlamindadir . Burada kesirler
    hassasiyet (presisyon) hanesi kadar rakamla
    gösterilir diger hanerler bilgisayar
    özelliklerine göre ya kesilir , ya da
    yuvarlatilir .

17
2.4. Fortran AlfabesiFORTRAN alfabesi 10 nümerik
, 26 alfabetik ve 13 özel karakterden
olusmaktadir .
  • 2.5. Karakterler Simge/Anlam

Nümerik 0 1 2 3 4 5 6 7 8 9 Alfabetik A B C D E F G H I J K L M N O P R S T U V W Y Z Özel bosluk bosluk birakma yerine koyma arti - eksi çarpi / bölü ( aç parantez ) kapa parantez . nokta , virgül ' apotrof " tirnak ve isareti
18
2.6. Fortran Deyimleri
  • Bir FORTRAN programi bir takim deyimlerden olusur
    . Deyimler programin hesap düzeni ile ilgili
    olarak , bilgisayara bilgi verilmesini,
    islemlerin yapilmasini ve uygulamasini, gerekli
    kararlarin verilmesini, sonuçlarin dis ortama
    alinmasini saglar
  • Deyimlerle baglanti kurabilmek için , deyimler
    numaralanabilir . Uygulama sirasi yönünden deyim
    numaralarinin sirasinin bir önemi yoktur . Deyim
    numaralari sadece hesap düzeninin geregi olarak
    bu deyimlerle dallanabilme olanagi saglar iki
    deyime asla ayni numara verilemez .

19
3.1. DEYIMLER , GÖREVLERI ve ADLARI
  • 3.1.1 Aritmetik deyimler Yapilacak islemleri
    denetler
  • 3.1.2. Giris -Çikis deyimleri Dis ortamla
    bilgisayar arasinda bilgi alisverisi saglar
  • 3.1.3. Yönetim deyimleri Programdaki deyimlerin
    icra sirasini yönetir
  • 3.1.4. Bildiri deyimleri Derleyiciye bilgi verir
  • 3.1.5. Altprogram deyimleri Alt programlari
    tanimlamaya ve kullanmaya yarar

20
3.1.1 Aritmetik deyimler
3.1.2 Giris / Çikis deyimleri
  • Degisken tanimlama

Giris /çikis deyimleri bilgisayarla dis ortam
arasindaki bilgi alisverisini saglar, Çevre
bellekte bilgi saklanmasi yada çevre bellekten
bilgi alinmasi olanagini saglar. Giris /çikis
birimini ve ortamini belirler, Bilginin giris
ortaminda yerlesme ve çikis ortaminda
yerlestirilme biçimini belirler, Bellekte bilgi
alisverisi yapacak data alanlarini belirtir.
21
Baslica Giris / Çikis deyimleri sunlardir
  • READ
  • PRINT
  • WRITE
  • FORMAT
  • Birçok programlama dilinde standart giris
    klavye, standart çikis kullanici ekrani (monitör)
    olarak belirlenmistir. Ancak veri giris/çikisi
    bir dosyadan da yapilabilir. Bu durum asagidaki
    sekilde gösterilmistir

DERLEYICI
ÇIKIS
GIRIS
PProgram
READ ........
PRINT .......
WRITE ......


Klavye
Ekran
Dosya
Dosya
22
  • Fortran'da, giris için READ, çikis için PRINT ve
    WRITE deyimleri kullanilir. Bu deyimlerin
    formatli (formated) ve formatsiz veya serbest
    format (free format) olmak üzere iki kullanimi
    vardir. Formatsiz kullanimda okuma/yazma biçimi
    derleyici tarafindan, formatli kullanimi ise
    programci tarafindan belirlenir.

23
(No Transcript)
24
(No Transcript)
25
(No Transcript)
Write a Comment
User Comments (0)
About PowerShow.com