Ana içeriğe atla

Programlama Dillerine Giriş

Merhaba arkadaşlar, bu blogda sizlerle teknoloji haricinde programlama dilleri hakkında da kısaca bilgi vermek istiyorum. Öğrendiğim tüm deneyimleri blogumda sizlerle paylaşacağım. Bilindiği üzere bilgisayarın ilk atası hesap makineleridir. Hesap makineleri üzerindeki mantıktan ilk önce tonlarca ağırlıktaki kocaman bilgisayarlar daha sonra cebimize sığacak küçük bilgisayarlar ortaya çıkmıştır. Bilgisayarlar teknolojinin son harikalarından biridir ve bir çok işimizi kolayca yapmamızı sağlarlar. Aslında programlama dillerini öğrenince akıllı diye nitellendirdiğimiz bu aletlerin ne kadar salak olduklarını göreceksiniz. İşin şaka tarafı bu tabiki. :)
Şimdi biraz dillerden bahsedelim.
Günümüzde yaklaşık 300’e yakın bilgisayar dilleri vardır. Bunlardan en güncelleri C# ve Java’dır. C ve C++ eskidir fakat işletim sistemleri günümüzde hala C ve C++ aracılığıyla yazılmaktadır. Bu nedenle onlar hakkında da kısaca bilginiz olması gerektiğinden yanayım.
C++ anlatmadan önce makine ve assembly dillerinden bahsetmek istiyorum nereden nereye geldiğimizi birazcık olsun farkedebilelim.
Makine Dili Nedir?
Yukarıda bahsettiğim gibi cebimize giren bilgisayarların temeli hesap makinelerine dayanmaktaydı. Makineler harflerden karakterlerden anlamazlar onlar için tek bir şey vardır. 0 ve 1’dir ve bunları voltaja çevirip bunlara göre veri oluştururlar. Programları çalıştıran merkezi işletim sistemleri de birer makine olduğunu düşünürsek 1 ve 0 lardan anladıklarını buradan çıkarabiliriz. 1 ve 0’dan anlayan işlemcilerin gerçekleştirdikleri işler oldukça basittir. İşlemciler mimarileri gereği sadece 2’li sayı sistemi(1 ve 0) ile gönderilen komutları anlamaktadırlar. Dolayısıyla işlemciler yüksek seviyeli programlama dilleri ile yazılmış komutları işlemezler. Kısacası 1 ve 0’lardan oluşan bu dile “makine dili” diyoruz.
Assembly Dili Nedir?
Her işlemcinin gerçekleştirebileceği belirli sayıda komut vardır. Bu komutların bütününe “komut seti”diyoruz. İkili sayı sistemi makineler için uygun olmasına rağmez biz insanların özgün yazılımlar üretmek için zorlar, çünkü 0 ve 1 lerin ne anlamı olabilir ki? Biz anlamlı kelimelerle daha rahat çalışabiliriz. İşte bu soruna çözüm bulmak için “Assembly dili(sembolik dil)” geliştirildi. Assembly diliyle kod yazmak makine koduna göre oldukça kolaydır. Fakat işlemci assembly diliyle yazılan komutları anlayamaz.  İşlemciye gönderilmeden önce asembly dili ile yazılmış olan kodların makine diline çevrilmiş olması gerekir. Bunun için “Assemblr”kullanılır.
Şimdi de artık C++ diline geçebiliriz;
C++ Dili
C dilindeki eksiklikleri kaldırmak amacıyla 1985 yılında Bjarne Stroustrup tarafından geliştirilen dil şu an kullanılmasa da işletim sistemi yapmak için hala kullanılan eski dillerdendir. Genellikle üniversitelerin proglamlama dili olarak öğrettikleri bir dildir. Bundan sonraki yazılarımda C++ dili hakkında paylaşımlarda bulunacağım.
Şimdiden hepinize kolay gelsin.

Yorumlar

Bu blogdaki popüler yayınlar

Algoritma Kavramı, Sözde Kod ve Akış Diyagramı

Bu yazımda çoğumuzun amelelik gibi gördüğü fakat belki de en önemli konu hakkında kısaca bilgi vermek istiyorum. Bundan sonra küçük örneklerle kod yazmayı arttıracağız. Programlama dillerinden bahsetmiştik geçenlerde. Yüksek seviyeli veya düşük seviyeli diller olsun hepsinin arasında kullanım farkları haricinde çok bir farkılılık yoktur. Hayatımızda kullandığımız koca koca programları, programlama dilleri değil onları hazırlayan algoritma kaynağı oluşturur. Kısaca algoritma kavramını tanımlarsak; Algoritma, belli bir problemi çözmek veya belli bir amaca ulaşmak için çizilen yoldur. Algoritma proglamlamada kullanılan en güzel tekniktir. Neyi nasıl yapacağımızı planlamamızı sağlar. Algoritmayı oluşturanda sözde kod ve akış diyagramlarıdır. ALGORİTMA ÖRNEĞİ(resim1) Sözde Kod:Yapacağımız algoritmayı kısa olarak sözle tanımlama yöntemidir. Örneğin; İki sayının toplamını veren algoritmanın sözde kodunu yazınız. 1)BAŞLA 2)YAZ(“1.sayiyi giriniz:”) 3)OKU(S1) 4)YAZ(“2.sayiyi g...

Örnek Algoritmalar ve Örnek C++ Kodları

Örneklerimize bu başlığımız altında devam ediyoruz arkadaşlar. :) Yıl başına kadar C++ hakkında bildiğim tüm konuları ve yaptığım projeleri sizlerle paylaşacağım. Sorularınızı yorumlarda bekliyorum. Şimdiden kolay gelsin :) Algoritma 5: Yarıçapı klavyeden girilen kürenin yüzey alanını ve hacmini açıklayan algoritmanın C++ kodunu yazınız.(π=3) #include <iostream> using namespace std; int main() { float r,alan,hacim; cout<<“Yaricapi giriniz:”; cin>>r; alan=4*3*r*r; hacim=(4*3*r*r*r)/3; cout<<“Alan:”<<alan<<endl; cout<<“Hacim”<<hacim<<endl; } Algoritma 6: Katsayıları klavyeden girilen birinci dereceden denklemin kökünü bulan algoritmanın C++ kodunu yazınız. #include <iostream> using namespace std; int main() { int a,b,c,x; cout<<“Katsayilari giriniz:”; cin>>a>>b>>c; x=(c-b)/a; cout<<“Kok:”<<x; } Algoritma 7:Klavyeden yarıçapı ve dilim açısı girilen daire diliminin...

Hayatımıza Birbirinden Farklı Çözümler Sunan Problemler: Algoritmalar

Merhaba arkadaşlar, Başlıktandan anlayacağınız gibi, hayatımıza birbirinden farklı çözümler sunan problemler topluluğu olarak algoritmayı tanımlayabilirim. Bu yazı serimizde algoritmaları tek tek tanıyıp çalışma mantıklarını inceleyen analiz eden, birden farklı çözümleri karşılaştırarak gerekirse kendimizde çözümler üretebileceğimiz bir seri yaratacağız. Algoritmalar bilmece bulmaca gibidir. Üzerinde düşündüğünde ufkunuzu açar. Bu seriyi hazırlama sebebimde ufkunuzu biraz olsun açmak oldu. Bu seriye başlamadan önce bir algoritmayı tanımlarken kullanacağımız terimleri tanıtmak istiyorum. Ayrıca algoritmaların pseudo kodlarıyla Java kodlarını da paylaşacağım. Belki Swift ile olan kodlarını da paylaşabilirim. ;) Ayrıca bu kodların toplu halde github hesabımdan erişim sağlayabilirsiniz. Şimdi algoritma dünyasını daha derinden tanıyalım. Algoritma nedir? Bir problemi çözmek için işlenen komutlar kümesine, algoritma nedir. Çözülebilir Problem nedir? Bir problem için algoritma oluşt...