KENDİ BİLGİSAYARINIZI OLUŞTURMA
Bundan sonraki kısımda yüksek seviyeli diller dünyasından ayrılıp bir bilgisayarın iç yapısını inceleyeceğiz. Makina dili programlamayı tanıtacağız ve bir kaç makina dili programı yazacağız. Bunun kabul edilebilir bir tecrübe olması için (simülasyon adı verilen yazılım tekniğine dayanarak) ve programlarınızı çalıştırabilmeniz için bir bilgisayar oluşturacağız.
Simpletron adında bir bilgisayar yaratalım. Bilgisayarımız basit ama oldukça güçlü bir bilgisayar. Simpletron sadece kendi anlayacağı dilde yazılan programları çalıştırabilmektedir. Bu dil Simpletron makina dili yada kısaca SMD'dir.
Simpletron bir akümülator (Simpletron hesaplamalarda kullancağı bilgiyi buraya koyar) içermektedir. Simpletron word ile işlenir. Bir word, onluk sistemde dört basamaklı bir sayıdır, örneğin +3364, -1293, +0007, -0001 vb. Simpletronun 100 word depolayabilecek bir hafızası vardır ve tüm word'ler konum numaralarıyla ifade edilirler, 00, 01, ...,99
Bir SMD programı çalıştırmadan önce, o programı hafızaya yüklemeliyiz. İlk komut (ya da ifade) her zaman 00 konumundan başlar. SMD' de yazılan her komut hafızada bir word yer kaplar. SMD komutlarının hepsinin artı işaret ile başladığını düşünebiliriz ama bir verinin word' ü eksi veya artı işareti ile başlayabilir. Simpletron' un hafızasındaki her word, bir komutu ya da bir program tarafından kullanılacak veriyi ya da kullanılmamış (tanımlanmamış) bir hafıza alanını içerebilir. SMD komutunun ilk iki basamağı hangi işlem yapılacağını gösteren işlem kodudur.
Projenin detaylarını içeren ek dosya (Dosya farklı formatlarda sunulmuştur) :
Yukarıdaki kısa açıklamadan sonra Simpletron ilginizi çektimi, daha detaylı açıklama ve örnek kodları ekte vermiş olduğum dosyada bulabilirsiniz. Simpletron Deitel C kitabında yer alan örnek bir proje, bu projeyi sitemde yayınlama amacım ise içerik olarak oldukça öğretici ve bir çok geliştiricinin pek ilgilenmediği güzel konulara değiniyor olmasından kaynaklanıyor.Eklediğim dökümanı okuduğunuzda zaten kafanızda kodlar canlanacak, benim kodladığım projeye ise google code adresinde açmış olduğum depo üzerinden ulaşabilirsiniz. Kodları bilgisayarınıza indirip inceleyebilirsiniz hatta geliştirebilirsiniz.
Yukarıdaki ekran görüntüsünde benim geliştirmiş olduğum Simpletron programını komut girişi yapılmakta. Benim başlattığım bu projeye katılmak isterseniz bundan da mutluluk
duyarım. Detaylı bilgi için iletişim bölümünden veya
zafercelenk@gmail.com adresine mesaj bırakarak bana ulaşabilirsiniz.