Şimdi Ara

Programlama dilleri nasıl ortaya çıkmıştır

Daha Fazla
Bu Konudaki Kullanıcılar: Daha Az
2 Misafir - 2 Masaüstü
5 sn
8
Cevap
0
Favori
2.858
Tıklama
Daha Fazla
İstatistik
  • Konu İstatistikleri Yükleniyor
0 oy
Öne Çıkar
Sayfa: 1
Giriş
Mesaj
  • Başlıktan da belli olduğu gibi ilk programla dili nasıl oluşturulmuştur bi fikri olan var mı? Ben düşündüğüm zaman hep bir kısır döngüye bağlıorum. Compile edilecek dil önce ara bir dile ordan makina diline çevriliyor ama makina 0 ya da 1 gelince ne yapcağını nerden biliyor?



  • 0 ya da 1 gelince ne yapacağı işlemcinizin içinde bir talimatlar kümesi (instruction set) şeklinde tanımlanmıştır. Farklı mimarideki işlemciler farklı talimat kümesine sahip olurlar, talimat kümesindeki tanımlı işlemler aynı olsa bile bunları tetiklemek için yapmanız gerekenler farklı olabilir. (Bu yüzden mesela x86 mimarisindeki bir işlemciye sahip bilgisayarda kullanacağınız işletim sistemini sparc mimarisindeki işlemciyle kullanamazsınız, ama mesela x64 mimarisindeki işlemciyle kullanabilirsiniz çünkü x64 mimarisi geriye dönük uyumluluk sağlıyor x86 ile. Sağlamasaydı kullanamayacaktık. nereden daldım ben bu konuya :D )
  • nasıl daldın ben de bilmiorum anlamadığım kısım zaten "tanımlama" kısmı. Sonuçta bir şeyi tanımlarken de bir şekilde onu dikte etmemiz gerekmiyor mu? Bunu nasıl yapılmış ilk onu çok merak ediyorum(sonsuz döngüye girdiğim yer buralar zaten)
  • işte o dikte işlemini elektronik/mantıksal devre elemanları ile işlemcinin içine yerleştirerek yapıyorlar. Yani işlemci temel olarak 100-200 adet işlem biliyor. Wikipedia'da x86 mimarisinin talimat kümesi varmış mesela:http://en.wikipedia.org/wiki/X86_instruction_listings
  • Hep merak etmisimdir
  • quote:

    Orijinalden alıntı: un.real

    işte o dikte işlemini elektronik/mantıksal devre elemanları ile işlemcinin içine yerleştirerek yapıyorlar. Yani işlemci temel olarak 100-200 adet işlem biliyor. Wikipedia'da x86 mimarisinin talimat kümesi varmış mesela:http://en.wikipedia.org/wiki/X86_instruction_listings




    tmm zaten böyle bişey var onu biliyorum ama işte sonuçta bu da bi komut yani ben MOV AX BX dediğimde mesela memorydeki A değerini B ye atıyor. Sonuçta bu instruction setler de birer komut değil mi? Kısır döngüm başladı yine




  • MOV AX BX dediğinde bu talimat sonuçta işlemcine kadar ulaşıyor. Burada işlemci elektronik olarak talimatta verilen işlemi gerçekleştiriyor. Yani talimatta her ne söyleniyorsa bunun karşılığı olan bir elektronik devre var işlemcinin içinde, o çalışıyor.
    Sanırım senin mantıksal devre birimlerini öğrenmen gerekiyor. Şu Wikipedia makalesini incelemeni öneririm:http://en.wikipedia.org/wiki/Logic_gate (İngilizce) işlemcinin ve her türlü çipin içinde bu mantıksal devre birimlerinin türlü çeşitli kombinasyonları bulunur. Bunlar giriş noktalarına gelen elektronik sinyalleri değerlendirip çıkış noktalarından doğru elektrik sinyallerini verir, bu da bilgisayarın çalışmasının temel mantığını oluşturur.

    Kısaca; hayır, instruction set'ler komut değil. Bir çeşit elektronik devre.



    < Bu mesaj bu kişi tarafından değiştirildi un.real -- 27 Ocak 2012; 15:38:07 >




  • mov, add, load gibi komutlar sadece sembol. Bunların hepsinin sayısal karşılığı var. 32 bit işlemcide çoğunlukla komutlarda 32 bittir. Bunun bir kısmı işleme giren operandı, diğer kısmıda işlemi gerçekleştirecek olan devrenin opcode u oluyor.

    Risc işlemcilerde komutu çözüp ilgili yerlere dağıtan birim tamamen donanımsal iken x86 komutları çok karmaşık olduğundan adamlar bunları çözmek için işlemcinin içine microcode denilen bir program gömmüşler.

    Gerçi konu başlığı ile bu yazılanlar pek uyuşmuyor. İlk programlama dillerinin nasıl ortaya çıktığını anlamak istiyorsan aşağıdaki linki gözden geçirebilirsin. Asm bile olmadan belleğe tek tek elle yükleme yaparak nasıl program yazıldığı anlatılıyor.

    http://www.csharpnedir.com/articles/read/?filter=&author=&cat=asm&id=436&title=X86%20Assembly%20Programlamaya%20Giri%C5%9F

    Sayısal devrelerin çalışma mantığı pek yazılımcıyı ilgilendiren bir husus olmadığı için burada ancak yüzeysel bilgi verilebilir. Ama picproje.org gibi forumlarda detaylı bir şekilde anlatabilirler.




  • 
Sayfa: 1
- x
Bildirim
mesajınız kopyalandı (ctrl+v) yapıştırmak istediğiniz yere yapıştırabilirsiniz.