En düşük seviye programlama dil hangi dildir?

Varyemez

Hectopat
Katılım
3 Şubat 2018
Mesajlar
199
Yer
Türkiye
Daha fazla  
Cinsiyet
Erkek
Meslek
Lise Öğrencisi
Soru gayet açık :D En düşük programlama dili nedir? Benim bildiğim en düşük seviye dil Assembly. Acaba Assembly mı en düşüğü oluyor?
 
Son düzenleyen: Moderatör:
Assembly'yi işlemek için bile bir işlemciye ihtiyaç duyarsınız. Yani, Assembly'den daha düşük seviyede çalışan bir kodlama dili işlemcinin içindeki yazılım olmalıdır. :) Boş bir çipten kendi işlemcinizi yapmak mümkün kılan da bu yazılım dilleridir. Bunun için bir donanım tanımlama dili (HDL) kullanmanız gerekir. Bir donanım parçasını modellemek için kullanılan dile donanım tanımlama dili denir. Yazılım aracılığıyla donanım üzerindeki temel yapılandırmayı sağlar. En çok kullanılan HDL dilleri ise VHDL ve Verilog'dur. Yeni bir donanımı tanımlamak için bu iki dile ihtiyaç duyarsınız.

İleri okuma için buyurun:
VHDL Nedir?
VHDL Terminolojisi
 
İşlemci senin yazdığın hiçbir kodu anlamaz, anladığı tek şey 0 ve 1 den oluşan kodlardır. Bu dile Makine Dili Denir. Senin yazdığın kodlar işlemcinin anlayacağı şekilde işlenir yani bir tür çeviri yapılıyor diyebiliriz. Tabii 0 ve 1 ile kodlamak zor olacağından normal kodlama yapılabilecek dillere şöyle bir bakalım isterseniz.

Öncelikle hepsini yazmak mümkün olmayacağından birkaç tane örnek verelim.

Etrafta biraz C dili veya C dilleri olarak bir şey görmüş olabilirsiniz.
C dili dediğimiz dillere örnek vermek gerekir ise ; C#, C++ gibi örneklenebilir.

Birkaçtana Programlama dilleri örneklersek;

+ Visual Basic
+ Assembly
+ SQL
+ ASP.NET
+ Phyton
+ Java
+ Java Script
+ Ruby

gibi sıralanabilir.

Öncelikle her programlama dilinin temelinin, seviyesinin ve hitap ettiği şeylerin farklı olduğunu belirtelim.
Örneğin Java ve C# genelde farklı şeyler için kullanılır. Bazen bir dil ile istenilen şeyi yapmak mümkün değil veya zor iken başka bir dilde bu daha kolay veya mümkün olabilir. C dilleri ile de hem üst hem de alt seviye programlama yapmanın mümkün olduğunu da belirtelim.

Önemli olan dili ne için kullanacak veya kullandığınız. Kendinize bir amaç belirlemelisiniz.
Örneğin bir web sitesi tasarlamak için gidip Phyton öğrenirseniz yapmazsınız çünki buna hitap etmez, ama baktığınız zaman hitap eden HTML , ASP.NET gibi dillerin olduğunu görürsünüz.

Öğrenmeden önce;

+ Dili hangi amaçla kullanmak istediğinizi bilmelisiniz.
+ Ne yapmak ve hangi konular üstüne çalışmak istediğinizi bilmelisiniz.

Bu iki madde çok önemlidir ve ilk adımdır.
Ayrıca kullandığınız dil kadar derleyiciniz de önem teşkil eder, arayüzünde zorlandığınız veya anlamadığınız bir derleyici kullanmak sizin çalışmanızı ve uygulamanızı zorlaştırır ve odaklanamazsınız.

Derleyicilere örnek vermek gerekirse;

+ Microsoft Visual Studio
+ ATOM

Bazen dillere özel derleyicilere de rastlayabilirsiniz bunlara örnek;

+ DEV-C++

gösterebiliriz.

Dil öğrenmek için ise başlangıçta kolay öğrenerek diğer dilleri öğrenmesini kolaylaştıracak diller seçilmeli.

Bu dillere örnek vermek gerekirse;

+ C#
+ Phyton

Okullarda dahil olmak üzere en çok öğretilen programlama dillerindendir.
 
Aslında işlemcinin komut kümesi de gerçek alt seviye değil çünkü CISC kökenli işlemclerin hepsinde microcode var ve bu mikrokodun görevi, komut kümesinde yazılmış komutları anlamlandırabilir daha küçük mikro komutlara dönüştürmek ve çalıştırmak. Uzun lafın kısası komut kümesi gerçekleştirimi(implementation) iki türlü olur: yazılımsal(CISC'te mikrokod ile), donanımsal(RISC işlemcilerin yaptığı örneğin ARM ve MIPS gibi). Programlama dillerindeki hiç bir ifadenin yada deyimin makina kodu karşılığı yoktur hatta C ve C++'ın bile, örneğin C'deki structlar Assembly kodu düzeyinde farklı boyuttaki verilerin RAM'de peşpeşe getirilip, ilk elemanlarının adresi bir yazmaca yada başka bir yerel değişkene yazılarak gerçekleştirilir. C++'taki runtime polymorphism ise virtual method table dediğimiz bir kod üretilerek gerçekleştiriliyor derleycilerin ürettiği kodda. Başka bir örnek C ve C++'ta tam sayılar ve gerçek sayılar + operatörü ile toplanıyor ama makine kodu düzeyinde farklı komutlar ve yazmaçlar kullanılarak yapılmaktadır, Programlama dilleri bir çeşit donanım soyutlama katmanıdır. İşlemcinin komut kümesi ise işlemcinin anlayıp çalıştırabileceği en yalın bytelar kümesidir. Mikro mimari ise komut kümesi mimarisinin implementasyonudur. Silberschatz'ın Operating Systems Concepts kitabını ve Tanenbaum'un Modern Operating Systems kitabını öneririm. Temel bilgisayar mimarisi işlemci mimarisi bilmeden programlama dili öğrenmek biraz ezbere olur benim fikrim.
 
Delikli kartlar derdim, bence. :)

İşlemcileri baz aldığında bile, içindeki milyarlarca küçük kapıları kontrol edecek bir algoritmaya ihtiyaç duyuyorsun. Mesela farklı ratioda çarklar kullanarak hesap makineleri yapanlar var. Bence en düşüğü budur.

Tabii soruyu, "En kolay dil hangisidir?" amacıyla sorduysan, bunun kesin bir cevabı verilemez.
 
Birkaçtana Programlama dilleri örneklersek;
+ SQL
+ ASP.NET
gibi sıralanabilir.

Derleyicilere örnek vermek gerekirse;
+ Microsoft Visual Studio
+ ATOM
Bazen dillere özel derleyicilere de rastlayabilirsiniz bunlara örnek;
+ DEV-C++
gösterebiliriz.
SQL bir programlama dili değil sorgulama dilidir.
ASP.NET bir programlama dili değil .NET Framework ile birlikte gelen bir web geliştirme platformudur.
Visual Studio derleyici değil bir IDE'dir.
Atom derleyici değil bir kod editörüdür.
Dev C++ derleyici değil bir IDE'dir.
Python ve Django ile gayet güzel web programlama yapılabilir.
 
Uyarı! Bu konu 6 yıl önce açıldı.
Muhtemelen daha fazla tartışma gerekli değildir ki bu durumda yeni bir konu başlatmayı öneririz. Eğer yine de cevabınızın gerekli olduğunu düşünüyorsanız buna rağmen cevap verebilirsiniz.

Technopat Haberler

Yeni konular

Geri
Yukarı