İlk Dil (Makine Dili)


İLK KONU MAKİNE DİLİ 
Makine dili, geliştirilen ilk programlama dilidir. Bu dilde yazılan tüm komutlar 0 ve 1 lerden oluşur.
Dile tam hakim olmasamda size kısa bi örnek gösterebilirim, örneğin;

Bu program ekrana "Hello world" yazısını yazar. Yani programcıların yazılıma ilk girdiği anda gördükleri olay "Merhaba Dünya" :))

101110110100010001 0000000110111001 0000110100000000 1011010000001110
1000101000000111 0100001111001101 0001000011100010 1111100111001101
0010000001001000 0110010101101100 0110110001101111 0010110000100000
0101011101101111 0111001001101100 0110010000100001


Bu dilin neden sadece ikili sayı sisteminden oluştuğunu merak ediceksiniz onuda şöyle açıklıyım.
İkili sayılar sayıların 2 tabanında yazılmasıyla elde edilir. Yani tüm sayılar 0 ve 1 rakamları kullanılarak ifade edilirler. Günümüz bilgisayarlarının neredeyse tamamında kullanılırlar.

Günlük hayatta sayıları ifade etmek için onluk taban (decimal) kullanılır. Bunun anlamı, her sayının 0, 1, 2, 3, 4, 5, 6, 7, 8 ve 9 rakamları kullanılarak ifade edilmesidir. İkili sayılarda ise fark 10 yerine taban olarak 2'nin kullanılmasıdır. Dolayısıyla kullanabileceğimiz rakamlar 0 ve 1'dir.


Bilgisayarda ikili sayı sisteminin kullanılma nedeni: bilgisayarın temelde sadece iki durumu ölçebilmesindendir. Bu durumu Sinyal yok 0, sinyal var 1 şeklinde özetleyebiliriz. Aslında bilgisayarların tüm bildiği, ölçebildiği budur. Fakat saniyede milyarlarca işlemi ardarada yapabilirler ve programla dilleri kullanılarak programlanabilirler.

Birde derleyici dediğimiz olay var ona bir ileri konularda tam olarka anlatıcam ama kısaca
Derleyici bir programlama dili ile yazılmış kaynak kodu makine diline çevirir

LOAD,ADD ve STOR Gibi komutlar vardır bunların karşılığı ise sıra ile
0001, 0011 ve 0010 olarak yorumlanır. örneklemek gerekirse;

LOAD C [0]     ;; Belleğin 0 adresindeki veriyi C siciline Yükle
ADD C BX       ;; C siciline BX sicilindeki adreste bulunan veriyi ekle
STOR C [100] ;; Sonucu 100 adresine yaz

Bu çeviricinin hedefi ise. Programcının anladığı kaynak kodundan işlemcinin anladığı 0 ile 1 den oluşan makina dili kodunu üretmek

0010 01 00 00000100

0010 = Komut
01 = Sicil
00 = İşaret
00000100 = Bellek Adresi


Özetle derleyici yazdığımız kodu makinenin anlayacağı ikili sayı sistemine çevirir.

Yorumlar

Bu blogdaki popüler yayınlar

Assembly Dİli

Programlamaa