programlama dili

bir işlemcinin, bir işi yapması için gerekli komutları bu işlemciye uygulatmak için kullanılan araçlardır. dilin düzeyi düştükçe okunabilirliği azalır.


en yüksek düzey dile örnek verecek olursak, visual basic'i örnek verebiliriz. bu dilin, programcılığa yeni başlayan kişiler için uygun olduğu söylenir. programın söz diziminde*, dolar işareti, süslü parantez, noktalı virgül gibi ilk bakışta amacı anlaşılmayan karakterlerin yerine, mümkün olduğu kadar, ingilizce sözcük kullanılır.

ondan daha düşük programlama dillerine örnek olarak java veya actionscript* örnek verilebilir. java ve actionscript'te biraz daha simgesel ifadeler kullanılır. yani bazı söz dizimlerini ifade etmek için ingilizce sözcükler yerine, süslü parantez, köşeli parantez, noktalı virgül gibi simgeler kullanılır. örneğin bu iki dilde noktalı virgül, ifadenin oluşturulmasını simgeler. örneğin "int i;" ifadesi, "int tipinde ve i adında bir değişken oluştur" demektir. bunun dışında, bu dillerde hala ram'e erişim yoktur, yani işaretçiler yoktur. bu nedenle, ram'e kafanıza göre değerler yerleştiremezsiniz.

daha düşük programlama dillerine örnek olarak c++ ve c verilebilir. bu dillerdeki en büyük özellik, ram'e erişebiliyor olmanızdır. yani istediğiniz gibi ram'den bir alan ayırtıp bu alana bir değer yerleştirebilirsiniz. bilinçsiz kullanıcılar ram'deki ayırtılmış alanı serbest bırakmayarak, memory leak sorununa yol açabilirler ya da sistemin kullandığı bir alana değer atamaya çalışıp, işletim sistemine zarar verebilirler.

en düşük programlama dili ise assembly'dir. işlemciye göre çeşidi değişen assembly dilleri*, ram'e istediği gibi erişebilir, işlemciyi doğrudan kontrol edebilir. gereksiz prosedürleri kullanmadan, doğrudan işlemciyi yönettiğiniz için programın boyutu çok küçük olur ve bu nedenle virüslerin yapımı için uygundur. ama olumsuz yani, öğrenmesinin diğer dillere göre daha zor olması ve ayrıca program listesinin çok karışık olacak olmasıdır. nesne tabanlı programlama dilleri gibi programlamada kolaylık sağlamazlar. bu nedenle program komutları dolambaçlı yollara girer. çözmesi zorlaşır. assembly dilleri, aslında işlemcinin anlayacağı 0'lar ve 1'lerdan oluşan kodların daha kolay okunabilir kısaltmalara çevrilmiş halleridir.

makine dili ile assembly dilinin birbirine paralel olduğunu düşündüğüm için "assembly'nin altı makine dilidir" diye bir ifade kullanmak istemedim. makine dili artık, işlemcinin dilidir. hex düzenleyicisi gibi bir program kullanarak uygun byte'leri teker teker dosyaya ekleyip, exe dosyasına çevirirseniz bile kodu çalıştırabilirsiniz.*