Yüksek ve düşük seviye programlama dilleri arasındaki farklar

İnsanlar bir bilgisayar donanımına talimat vermek için programlama dillerini kullanırlar.

Programlama dilleri

Bir programlama dili, insanların bilgisayarları yönlendirebileceği herhangi bir dildir. Bir program, bir bilgisayara teslim edilmek ve yürütülmesi için hazırlanan talimatların bir listesidir. Esasen, talimatlar, bilgisayarın belleğindeki değerleri saklar, taşır ve değiştirir. Bu değerler, kullanıcıyla iletişim kurma yolları sağlayan monitörler, hoparlörler, klavyeler, dokunmatik pedler veya fareler gibi çeşitli cihazlar tarafından yorumlanabilir.

Makine kodu

Düşük seviyeli bir dil, bilgisayar donanımının temellerine yakın bir dildir. En alt düzey dil, donanımın doğrudan anladığı ve yorumlama veya çeviri gerektirmeyen makine kodudur. Makine kodu tamamen ikili sayı dizelerinden oluşur: ünlü sıfırlar ve olanlar. Başka bir dilin ulaşabileceği her şeyi yapabilmesine rağmen (aslında dillerin geri kalanı yorumlayıcı tarafından makine koduna dönüştürülmelidir), programcının gereksinimlerini karşılamak için tasarlanmamıştır ve işlemcinin derinlemesine bilgisi gerektirir. Bilgisayarın aygıtları, bunun yanında bir insanın okuması neredeyse imkansızdır.

Montaj dili

Bir sonraki "daha yüksek" seviye programlama dili, talimat kodları daha sezgisel komutlarla değiştirilen makine kodu olan montaj dilidir. Örneğin, 97 değerini bir bellek kaydına yerleştirme komutu AL olarak adlandırılır (makine kodunda "10110000 01100001" olur) ve montaj dilinde hala bir şifreli komut olan "MOV AL, 97" olur. okumak çok daha kolay. Yazmak için hala yetersiz olsa da ve programcının bilgisayar donanımıyla doğrudan ilgilenmesini gerektirse de, daha soyut olduğundan, yani programcıya daha yakın olduğu için makine kodundan daha yüksek bir dildir.

Üst düzey diller

Modern programcılar nadiren montaj dilinde yazıyorlar. Bunun yerine, derleyiciler veya tercümanlar olarak adlandırılan programlar makine koduna dönüşebilen C, Java ya da Python gibi birçok üst düzey dilden birini kullanırlar. Bu diller, programcının fiziksel donanım dünyasına karışmasını engellemek ve mantıksal soyutlamaya götürmek zorunda kalmaz: Onaltılık değerleri bellek yazmaçları tarafından hareket ettirmek yerine, programlayıcı içeriği değiştirilebilen değişkenlerle çalışır. Bir koşul karşılanana kadar, IF, AND, THEN, OR ve ELSE gibi mantıksal ifadelerle diğer araçların yanında tekrarlanabilirler. Bu diller, en az güçlükle maksimum gücün elde edilebileceği yollara katılarak programlayıcı için tasarlanmıştır.

karşılaştırmalar

Yüksek seviyeli diller bu ismi almazlar, çünkü bunlar düşük seviyeli dillerden “daha ​​iyi” dirler. Bazen bilgisayar işlemcisiyle doğrudan doğruya dille veya makine kodunda haberleşme yeteneği, üst düzey bir dilin soyutlama katmanlarının zorlaştığı sorunları çözebilir. Çok yüksek düzeyde bir dil, Microsoft Visual Basic gibi belirli bir işletim sistemi ile veya bir kelime işlemcisinin "makroları" gibi belirli bir programla ilgilenebilir. Bu programlar, nasıl çalıştığını bilmeden Windows veya Word'ü manipüle etmek isteyen herkes için çok kullanışlıdır, ancak böyle bir dil kendi programlarını yazmaya çalışan ve daha alt düzey bir dile ihtiyaç duyan biri için yararlı olmaz. Bu nedenle, bir programcı yürütmesi gereken işe bağlı olarak bir dil seçer.