Bilgisayar Yazılım Dilleri Nasıl Gelişti?

Bilgisayar Yazılım Dilleri Nasıl Gelişti?

46

Programcılar değişik programlama dilleri kullanarak komutlar yazarlar. Bunlardan bazıları makine tarafından direk anlaşılırken, bazıları çevirme(translation) işlemlerine tabi tutulmak zorundadır. Günümüzde yüzlerce yazılım dili mevcuttur. Bunlar üç genel tipe ayırabiliriz:

  1. Makine dilleri
  2. Assembly dilleri
  3. Yüksek Seviyeli Diller

Herhangi bir bilgisayar, doğrudan sadece makine dilini algılayabilir. Makine dili, o bilgisayarın donanım tasarımına bağlıdır. Makine dilleri, belirli sayıların özel dizilimleriyle bilgisayarın temel işlevlerini yaptırtmalarını sağlarlar ( Bu sayılar genellikle 1 veya 0’a indirgenirler. *1  ). Makine dilleri her makinede farklılık gösterebildiği için makine bağımlı dildir. Makine dilleri, insanlar için anlaması oldukça zordur.

Makine diliyle yazılmış küçük bir programa örnek verelim:

+130042774

+1400593419

+1200274027

Buradaki kodlar makinenin anlayabileceği kodlardır. Program, iki sayının toplamını vermektedir. Bunları insanların anlaması çok zordur.

Bilgisayarlar popüler hale geldikçe, makine dilleriyle programlaması artık imkansızlaşmaya başlamıştır. Bu yüzden insanlar, anlayabileceği bir yazılım dili olarak ingilizce’ye yakın kısaltmalar kullanmaya başladılar. Bu kısaltmalar, assembly dillerinin temelini oluşturmuştur. Assembler olarak adlandırılan çevirici programlar, assembly dilinde yazılmış programları makine diline çevirmek için geliştirilmiştir. Şimdi, yukarıda yazılmış olan kodların assembly dilinde yazılmış halini yazalım:

Bu kod, insanlara oldukça yakın gelse de makine diline çevrilmediği müddetçe bilgisayara bir şey ifade etmez!

Assembly sayesinde program yazmak çok kolaylaşmıştır. Ancak, basit görevleri yapmak için birçok kod satırı yazmak zorunda kalınıyordu. Programlama sürecini hızlandırabilmek amacıyla yüksek seviyeli diller geliştirildi. Bu dillerde, tek bir ifadeyle birden fazla görevi yerine getirmek mümkün oluyordu. Bu sefer de aynı şekilde makine diline çevirmediğimiz müddetçe bilgisayar açısından bir anlam ifade etmiyordu. Bu yüzden, Derleyici(compiler) olarak adlandırılan çevirici programlar, yüksek seviyeli dilleri makine diline çevirme işini yaparlar. Yüksek seviyeli diller, programcılara günlük İngilizce’ye oldukça yakın kodlar yazma imkanı sunar. Ayrıca, genellikle kullanılan matematik ifadeler de yüksek seviyeli dillerde kullanılabilir. Şimdi de yukarıdaki assembly ile yazılmış kodların yüksek seviyeli dilde yazılmış örneğini verelim.

Görüldüğü gibi yüksek seviyeli diller makine dilleri ya da assembly dillerine göre programcılar tarafından daha çok tercih edilirler. C ve C++, yüksek seviyeli diller arasında en güçlü ve en çok kullanılanlarıdır.

Bu sebepten, programlamaya yeni başlayan birisini düşünerek en baştan C programlama ve ilerisinde C++ programlama anlatacağız.

Diğer yazılım dillerinin kendilerine has özellikleri bulunmaktadır. Ancak, önemli olan bir yazılım dilini olabildiğince hakim olabilmektir. Böylece diğer yazılım dillerini öğrenebilmek daha kolay olacaktır. Çünkü dil değişse dahi mantık değişmemektedir.

 

NOT:  Tüm yazılım dillerinde İngilizce dili bulunmaktadır. Bu yüzden herhangi bir terim yazılacağı zaman İngilizce olarak yazılacaktır. Birebir türkçe karşılığından daha çok İngilizce olarak aslında ne anlama geldiğini yorumlayarak yazacağız.

 

*1: Burada 1 ve 0 olarak adlandırılan binary sayı sistemidir. Sadece 2 sayı tabanına ait 0 ve 1 rakamlarına sahiptir. Örneğin 15 sayısının binary tabandaki karşılığı 1111’dir. Bunu çevirirsek; [ 1 * (2^0) + 1* (2^1) + 1*(2^2) + 1*(2^3)] = 15 değeri elde edilir.

Leave A Reply

Your email address will not be published.