PROGRAMLAMA DİLLERİ
Programlama dili programcının programı yazarken kullandığı özel bir dildir. Bilgisayara yaptırılacak olan işlerin bilgisayarın anlayabileceği dilde ifade edilmesidir. Bütün programlar programlama dilleri ile yazılır. Bilgisayar gibi programlama dilleri de çeşitli süreçlerden geçerek geliştirilmişlerdir. Programlama dilleri genellikle İngilizce kelimelerden seçilmiş ve ya kodlanmış kısaltmalardan oluşur.
Program yazarken dil seçimi, yazılacak programın niteliğine göre yapılmalıdır. Örneğin bir muhasebe programı yazmak için seçilen dil, bazı matematik programlarının yazılması için uygun olmayabilir.
Bir hücrede akım bulunması hali (1) ve bulunmaması hali (0) sayılmaktadır. Bu nedenle bilgisayara kayıt , ikili, sekizli, on altlı ve otuz ikili sistemler ile yapılmaktadır. Bilgisayar kullanımının artması ile ihtiyaçlara göre programlama dilleri geliştirilmiştir.
PROGRAMLAMA DİLLERİ
DÜŞÜK SEVİYELİ DİLLER
Düşük seviyeli diller makine dili ve assembly dili olmak üzere ikiye ayrılır
A)Makine Dili
Bilgisayarın doğrudan ve hemen işlem yapmasını sağlayan komutlardan oluşan bir programlama dilidir. Makine dili “010101001” lerden oluşan komutlardır ve bunlar direk makineye hitap eder. Makine dilinde komutlar doğrudan mikroişlemcinin anlayacağı formatta verilir. Bilgisayarlarda değişik mikroişlemciler kullanılabildiği için bir bilgisayar için yazılan makine dili programını başka bir bilgisayarda kullanamayabiliriz. Makine dilinde 0 ve 1’leri kullanarak program yazmak çok zor olduğu için assembly dili geliştirilmiştir.
B)Assembly Dili
Assemble” kelimesinden türemiştir. Ufak parçaları toplama, birleştirme anlamını taşır. Bilgisayarın Hardware (donanım) yapısına direkt olarak bağlı olduğu için her makinenin kendi Assembly programlama dili vardır. Assembly dili makine dilinin, ikili sayı sistemindeki, komut kodlarının kısaltılmış sözcük ve simgelerden oluşan karşılıklarıdır. 0 ve 1‘ler yerine “MNOMENIC” denilen semboller kullanılır. Bunlar,ADD,MOV,JMP,STR gibi sembolik komutlardır. Assembly dilinde yazılan her program çevirici denilen ASSEMBLER’den geçirilerek makine diline çevrilir.
Assembly makineye çok daha yakın olduğu için en iyi compilerden (derleyicilerden) bile çok açık bir farkla daha hızlı çalışırsınız. Ancak hızlı olmasına rağmen pek kullanılmazlar çünkü diğer dillere göre çok daha karışık ve yaptığınız hatalar direkt olarak makinenizi kilitleyebiliyor. Bunun yanında basit işlemleri bile microkod seviyesinde yazdığınız için çok daha uzun bir kod yazımı gerekiyor. Stok kontrol yada hasta takip programları yazmak için uygun bir programlama dili değildir. Hızın kritik olduğu durumlarda işletim sistemi, basit IO (giriş-çıkış) işlemleri gibi durumlarda kullanılır. Bunun yanında bilgisayar mimarisini anlamak için çok yararlı ve gerekli bir dildir.
Assemly Komutlar
- Segment komutu: Segment komutu programın kullanıldığı bölüm kesimlerini tanımlamak için kullanılır. Komutun kullanım şekli isim SEGMENT tip ‘sınıf şeklindedir. Bu komut bir isimle başlar ve tanımlanan isim program içende yapılacak atamalarda vb. işlemlerde kullanılır.
- Assume komutu:Program içinde belirlenen segment(bölüm) kesimlerinden hangisinin açılacağını takip eden komuttur.
3) Proc komutu: Bu komut kod bölümü içindeki bir bloğu açmak için kullanılır. Kullanış şekli isim PROC tip şeklindedir.
4) Call/Ret komutu: Bu komut herhangi bir işlem bloğundan başka bir işlem bloğunu çağırmaya yarar. Kullanış şekli CALL…..çağrılacak bloğun ismidir.
Derleyiciler: (Compiler)
Derleyicisi compiler olan dillerde yazılan program derleyiciden geçirilerek makine diline dönüştürülür. Bu derleme sırasında yazım hatası, sayısal hata komut sıra hatası vb. gibi hatalar varsa bu hatalar listelenir. Programcı bu hataları gidererek programı yeniden derler. Bu tür programlar ancak bütün olarak derlendikten sonra çalıştırabilir.
Derleyici, programın makine kodunu bir kez oluşturarak ayrı bir dosyaya kaydeder. Program her çalıştırıldığında bu kod otomatik olarak kullanılır. C, PASCAL, COBOL, derleyicisi olan yüksek seviyeli dillerdir.
Yorumlayıcılar:
Yorumlayıcılar Interpreterde yazılan programların makine diline dönüştüren yazılımlardır. Ancak bu dönüşüm, derleyiciden farklı olarak gerçekleştirilmektedir. Yorumlayıcılar her satırı anında makine diline çevirerek çalışır ve bu kodu bir dosyaya kaydetmez. Dolayısıyla program her çalıştırıldığında her satır yeniden makine koduna dönüştürülür. Bu yüzden yorumlayıcılar yavaş çalışmaktadır. BASIC ve DBASE hem derleyicisi hem de yorumlayıcısı olan yüksek seviyeli dillerdir.
(Yorumlayıcı ile programlama)
Derleyiciler ve yorumlayıcılar program kodlarını, klavyeden giriş hataları ve dilin programlama komutlarının yanlış kullanımı gibi teknik hatalar içi kontrol ederler. Ancak, programlardaki yanlış bir satış vergi oranı yada yanlış formül gibi mantık hatalarını kontrol edemezler. Programı mantık hatalarından arındırmak programcının işidir. |
PROGRAMLAMAYA GİRİŞ
Bir sorunun bilgisayar ile çözülmesi (çözecek programın hazırlanması) için aşılacak aşamalar; sorun analizi, algoritmanın hazırlanması akış diyagramının (çizelgesinin) çizimi, programın kodlanması, test edilmesi ve uygulanması şeklinde sıralayabiliriz. Şimdi bu kavramları açıklayalım
A)SORUN ANALİZİ
Herhangi bir sorunun (işimizi kolaylaştıran programın) programının hazırlanması için programcı tarafından sorunun iyi anlaşılmış olması lazımdır. Sorunun analizi aşağıdaki aşamaları içerir.
1. Giriş-çıkış birimleri ve bilgileri (biçim, şekil,düzen) belirlenir.
2. Programda kullanılacak değişkenler tanımlanır (sembol) ve türleri belirlenir.
3. Sorunun çözüm yolu belirlenir ve çözüm için gerekli matematiksel modeller kurulur.
ÖRNEK:Klavyeden girilen iki sayının çıkarılmasının ekrana yazılması sorunun analizi aşağıdaki gibi yapılır.
İstenenler:
a)sayıların klavyeden girilmesi
b)çıkarma işleminin bulunması
c) çıkarma işleminin ekranda görüntülenmesi
Değişken tanımı:
A:Birinci sayıyı
B:İkinci sayıyı
C:iki çıkarımını göstersin
Çözümün matematiksel gösterimi: A-B=C
B) ALGORİTMANIN HAZIRLANMASI
Sorunun çözümü için saptanmış sonlu sayıda basamaktan oluşan adımlar veya komutlar takımıdır. Diğer bir deyişle algoritma verilerin sorunun nasıl çözüleceğinin, hangi basamaklardan geçilerek sonuç alınacağının, sonucu nereye ve nasıl yazılacağının sözel olarak ifade edilmesidir.
ÖRNEK: ax2 +bx+c=0 denkleminin reel ve sıfırdan farklı olan katsayılarını okuyup, denklemin köklerini bulacak ve katsayılarla bulunan kök değerlerini yazma işlemi için bir algoritma.
- Başla.
- a,b,c değerlerini al.
- Deltayı hesapla.
- Bulunan delta değeri sıfırdan küçük ise kök sanaldır ve son.
- Bulunan değer sıfırdan büyükse kökleri bul.
- Birinci kökü bul.
- İkinci kökü bul.
- a,b,c,x1,x2 değerlerini yaz ve son.