Makine Dili Nedir? Nasıl Çalışır?

W0LKAN

Yeni üye
27 Kas 2020
34
4
İstanbul
Merhaba sevgili THT üyeleri bu konumda bilgisayar donanımına en yakın dil olan makine dilinden bahsedeceğim. İlgisi olanlar için faydalı olması dileğiyle...

Neden birden fazla programlama dili vardır?
Konuma başlamadan önce bu sorunun cevabını vereceğim. Bilgisayarın anladığı dil makine dilidir, bu dilde program yazmak oldukça zordur ve hatalara neden olabilir. Makine dili ikilik sayı sisteminden oluşur.
Makine dilinde bir "Merhaba dünya!" programı:
10111011 00010001 00000001 10111001 00001010 00000000 10110100 00001110 10001010 00000111 01000011 11001101 00010000 11100010 11111001 11001101 00100000 01001101 01100101 01110010 01101000 01100001 01100010 01100001 00100000 01100100 11111100 01101110 01111001 01100001 00100001
Yukarıdaki makine dili ile yazılmış programı anlamak için biraz uğraşmak gerekiyor, hata payı da yüksek. Mühendisler daha kolay program yazmak için programlama dillerini oluşturmuşlardır, her programlama dili farklı bir amaca hizmet eder. Örneğin Fortran matematiksel işlemler içindir, PHP Genel Ağ tabanlı uygulamalar içindir. C'de bir işletim sistemi yazılabilir ama bunu Fortran'da yapmak boşa uğraştır.

Makine Dili Nedir?


Makine dili komut işleme yeteneğine sahip entegrelerin işleyebilecekleri komutlardan ve buna uygun söz diziminden oluşan dile verilen addır. Makine dili, işlemcinin verilen komutlar doğrultusunda çalıştırılmasını sağlayan ve işlemci mimarisine göre değişen en alt seviyedeki programlama dilidir. Bu dil sadece 0 ve 1 ikililerinin anlamlı kombinasyonlarından meydana gelmektedir. Bu nedenle, makine dilinin anlaşılması çok güçtür.
nyEQYy.jpg


Sonuç olarak bilgisayar programı hangi dilde olursa olsun formatı makine diline çevrilmesi gereklidir. Her emrin yerine getirilmesine "Instruction Cycle" denir ve 4 ana kısımdan oluşur.
OH7Ncn.jpg


Fetch:
Bir sonraki emri hafızadan getir.
Decode: Emrin ne demek istediğini çöz.
Execute: Emir yerine getirilir, işlem yapılır.
Store: Sonucu sakla.

Makine dili işlemci türüne özel olarak yazılmaktadır. Yani bir işlemci türü için makine diliyle yazılmış program diğer işlemler için uygun olmamaktadır. Bilgisayar ortamında 4 farklı sayı sistemi kullanılmaktadır.
İkili (Binary) Sayı Sistemi
İkili sayılar sayıların 2 tabanında yazılmasıyla elde edilir. Dolayısıyla tüm sayılar 0 ve 1 rakamları kullanılarak ifade edilirler. Elektronik devrelerindeki kolay uygulanabilmeleri nedeniyle günümüz bilgisayarlarının neredeyse tamamında kullanılırlar.

Sekizli (Oktal) Sayı Sistemi
Sayısal Sistemler her ne kadar ikili sayı sistemini kullansalar da bir tasarımcı için binary (ikili) sayılarla işlem yapmak zahmetli bir işlem olduğundan farklı sayı sistemlerinin kullanımı tasarımcılar arasında yaygınlaşmıştır. Kullanılan bu sayı sistemlerinden Sekizli (oktal) Sayı sisteminin tabanı sekiz olup 0, 1, 2, 3, 4, 5, 6, 7 rakamları bu sayı sisteminde kullanılır.

Onluk (Decimal) Sayı Sistemi
Günlük hayatımızda en çok kullandığımız sayı sistemi olup, bütün işlemler aşağıda gösterilen 10 adet rakam ile gerçekleştirilir. Yani tam sayılar kullanılır.

Onaltılı (Heksadesimal) Sayı Sistemi
Bu sayı sisteminde 16 adet ifade kullanılır. Diğer sayı sistemlerinden farkı rakamların yanı sıra harf kullanılmasıdır. Bilgisayarda ikili sistem sayılarının daha pratik ve kısa bir şekilde kullanılması için tercih edilir.


KAYNAKLAR

eftalgezer.blogspot.com
bilgegunluk.com
teknokampus.net
diyot.net
tr.wikipedia.org​​
 
Üst

Turkhackteam.org internet sitesi 5651 sayılı kanun’un 2. maddesinin 1. fıkrasının m) bendi ile aynı kanunun 5. maddesi kapsamında "Yer Sağlayıcı" konumundadır. İçerikler ön onay olmaksızın tamamen kullanıcılar tarafından oluşturulmaktadır. Turkhackteam.org; Yer sağlayıcı olarak, kullanıcılar tarafından oluşturulan içeriği ya da hukuka aykırı paylaşımı kontrol etmekle ya da araştırmakla yükümlü değildir. Türkhackteam saldırı timleri Türk sitelerine hiçbir zararlı faaliyette bulunmaz. Türkhackteam üyelerinin yaptığı bireysel hack faaliyetlerinden Türkhackteam sorumlu değildir. Sitelerinize Türkhackteam ismi kullanılarak hack faaliyetinde bulunulursa, site-sunucu erişim loglarından bu faaliyeti gerçekleştiren ip adresini tespit edip diğer kanıtlarla birlikte savcılığa suç duyurusunda bulununuz.