Bilgisayarınızda çalışan her bir yazılım oyun veya cep telefonunuzda çalışan her bir uygulama aslında bir programlama dili ile yazılmış ortaya konmuştur. Bilgisayarın işlemcisi tarafından çalıştırılmak üzere bir takım kod parçaları yazılır. İşlemci yazılan bu kodları anlar ve çalıştırır. Bu kodları yazabilmek için ise binlerce hatta daha da fazla programlama dili yapılmış ve halen daha yapılmaya devam ediliyor.
Bu kadar çok programlama dilinin olmasının ise birden fazla sebebi var. Kimisinin yapılış amacı farklı yazdığım Rhodeus Script gibi sadece web’i hedef alırken kimi programlama dilleri yapay zekayı kimileri ise masaüstü programlamayı, sistem programlamayı hedef alıyor.
Aynı amaç için yapılmış olsa dahi bir çok farklı programlama dili var. Bunların yapılma amacı ise programı yazacak kişiye kolaylık sunmak, daha geniş imkanlar sunmak veya daha kısa sürede istenilene ulaşmayı sağlamak amacıyla yapılmışlardır.
Aslında bilgisayar işlemcisi sadece tek 1 dilden anlar. Makine kodu. Tabi bir insanın makine kodunu anlaması ve makine kodu yazması oldukça zor ve o makine kodunda istediğini bulması zor olduğu için Assembly adında bir çevirici dil yada diğer tabiriyle ara gösterim dili ortaya çıkmıştır. Makine kodu ve Assembly’e biraz daha yakından bakalım. Aşağıda evlerimizde kullandığımız intel işlemcilerin anladığı komut dizileri(instructions) yani makine komutları bulunmaktadır.
55 31 D2 89 E5 8B 45 08 56 8B 75 0C 53 8D 58 FF 0F B6 0C 16 88 4C 13 01 83 C2 01 84 C9 75 F1 5B 5E 5D C3
Bu anlamsız gelen komut dizisini biraz daha anlamlı hale getiren Assembly gösterimi
Yukarıda da gördüğünüz üzere Assembly dili sadece makine kodunun biraz daha anlamlı hali. Ama baktığınızda halen daha kodlar karışık veya bir işi yapmak için çok fazla kod yazımı yapmak gerekiyor işte bu noktada C, C++, D, python gibi yüksek seviye programlama dilleri yapılmış ve programlama “az kod çok iş” diyebileceğimiz bir kıvama gelmiş.
Bir sonraki yazımda programlama dillerini biraz daha yakından inceleyeceğiz.