Genel olarak programlama dilleri nelerdir?
programlama dilleri bilgisayarlarla konuşmanın bir yoludur. kabaca ilk başta konuşursak, çünkü bilgisayarlar sadece sıfırları ve olanları anlayabiliyordu (bilgisayarların sadece iki durumu alabilen anahtarlar olarak transistörlerden yapılmış olması nedeniyle, bu iki durumu 0 ve 1 olarak adlandırıyoruz) ve 0,1 ile çalışmak zor biz insanlar olarak biz bilgisayar bilimcileri ikili (0,1) her komuttan montaj dili olarak adlandırdıkları daha insan tarafından okunabilir bir forma bire bir eşleme yapmaya karar verdiler.
örneğin şöyle bir talimatımız olsaydı:
11001101
montajda buna denirdi:
YÜKLE_A 15
Bu, kayıt a'nın içeriğini bellek konumuna 15. yüklediği anlamına gelir. Dediğim gibi, transistörlerin iki durumu veya bilgisayardaki herhangi bir şey için 0 ve 1'i seçmek gibi bir kuraldı. bu şekilde 50 talimatlı bir programa sahip olmak, montaj dilini hatırlamak daha kolay olurdu. böylece kullanıcı derleme kodunu yazacak ve bazı program (bu durumda derleyici) kodları çağırdıklarında ikili talimatlara veya makine diline çevirecektir.
ancak bilgisayarlar her geçen gün geliştikçe, daha fazla talimat içeren daha karmaşık programlara yer vardı, örneğin 10000.
bu durumda montaj gibi bire bir eşleme işe yaramaz, bu nedenle diğer üst düzey programlama dilleri oluşturulur. örneğin, kullanıcı tarafından oluşturulan ekrana bir şey yazdırmak için I / O cihazlarıyla bir ilişki için yaklaşık 80 talimat alırsa, burada bir şey yapalım ve tüm bu kodu bir kütüphaneye paketleyebilir ve örneğin printf ve ayrıca bu printf'i burada ilgili montaj koduna çevirebilecek başka bir program oluşturun ve oradan derleme gerisini halledecektir. derler derler.
bu yüzden şimdi sadece ekrana bir şey yazdırmak isteyen her kullanıcı, tüm talimatları ikili veya montajda yazmak zorunda kalmayacak, sadece printf ("bir şey") yazıyor ve derleyici ve montajcı gibi tüm programlar gerisini hallediyordu. Şimdi daha sonra diğer uzun kodlar sadece binlerce kişinin kodunu python'daki bir koda basitleştirebildiğini ve diğer insanların kullanımı için paketleyebildiğini gördüğünüz gibi paketlenecektir.
diyelim ki python'da birçok farklı kod paketlediniz ve bir modül (libray, paket veya çağırmak istediğiniz herhangi bir şey) oluşturdunuz ve bu modülü mgh (sadece benim adım) olarak adlandırıyorsunuz. şimdi diyelim ki bu mgh bir şekilde şöyle der:
import mgh
mgh.connect(ip,port.data)...
ip ve bağlantı noktası numarası belirtilerek uzak bir sunucuya kolayca bağlanabilir ve daha sonra verileri gönderebilir (veya bunun gibi bir şey). şimdi insanlar hepsini tek bir satır kullanarak yapabilirdi, ama olan şey mgh dosyasından alınan bir sürü kod yürütülüyor olmasıdır. ve paketleme, yürütme sürecini hızlandırmak için değil, diğer programcıların çalışmalarını kolaylaştırmak için olmuştur. bu yüzden burada birisi önce kodunuzu kullanmak istiyorsa, dosyayı içe aktarmalı ve sonra python yorumlayıcısı içindeki tüm kodu tanıyacak ve böylece kodu yorumlayabilecektir.
şimdi bir programlama dili oluşturmak istiyorsanız ve onu yürütmek istiyorsanız, önce bir çeviriye ihtiyacı vardır, örneğin diyelim ki sözdizimini anlayabilecek ve c'ye çevirebilecek bir program oluşturdunuz, bu durumda çevrildikten sonra c'ye, geri kalanı c derleyici, sonra montajcı, bağlayıcı, ... tarafından halledilir. önce c'ye dönüştürülmesi gerektiğinden daha yavaş olmanın bedelini ödemek zorunda olsanız bile.
şimdi yapabileceğiniz bir diğer şey de, c ile olan gibi tüm kodu eşdeğer montaj diline çevirebilecek bir program oluşturmaktır, ancak bu durumda program doğrudan yapabilir ve oradan geri kalanı bağlayıcı. bu programın derleyici olduğunu biliyoruz.
bu yüzden bahsettiğim şey, sistemin anladığı tek kod 0,1'dir, bu yüzden bir şekilde size sözdizimini dönüştürmelisiniz, şimdi işletim sistemimizde, derleyici, linker ve ... gibi birçok farklı program var. kodunuzu derlemeye dönüştürürseniz geri kalanıyla ilgilenebileceklerini veya söylediğim gibi, kodunuzu bu dile çevirerek diğer programlama dilleri derleyicilerini bile kullanabileceğinizi söylemek için yaratılmıştır.