64'ler sayı 33, sayfa 61

Bu sayfadaki yazılar

Sayfanın metni

Sayfa 61

|

Gerek çeşitli dergilerde olsun, gerekse piyasaya sürülen dökümanlarda olsun öğretilmeye çalışılan makina dili karmaşık çoğunlukta öğreneni konudan uzaklaştırmıştır Bizler, size mümkün olabilecek en sade ve basit dille makina dilini anlatacak, yararlı ve zevkli çalışmalar yapmanızı sağlayacağız. MAKİNA DİLİ NEDİR? Her mikrobilgisayarın içinde bir mikroişlemci vardır. Bu mikroişlemci bilgisayarınızın beynini oluşturur. Bu beyin sizin kullanabileceğiniz komutlara veya daha önce içine yerleştirilmiş komutlar kümesine (programlara) göre hareket eden özel bir çiptir. Bu çip sadece kendine ait olan komutları, başka bir deyişle dili anlar. Biz buna makina dili diyoruz ve bu dil bilgisayarımızın ana dilidir. Bütün bilgisayar dilleri makina diliyle yaratılmışlardır. Makina dili varken neden diğer yaratılmış diye bir soru aklınıza gelebilir. Bunun sebebi, makina dilinin karmaşık bir dil olması ve makina diliyle yazabileceğimiz bir programı diğer dillerle daha kolay ve kısa yazabilmemizdir. Bu seferde akla başka bir soru gelir, durum böyleyse diğer dillerle kolayca program yazmak varken makina dilini neden öğrenelim? Bunu şöyle açıklayabiliriz; diğer diller makina diliyle yaratıldığındabu dillerle yazılan programların bilgisayar tarafından anlaşabilmesi için arada bir tercümana ihtiyaç vardır. Bu tercüman her program için ayrı isim alır. Örneğin Basic tercümanın ismi "interpreter"dir.Bir basic programı run edildiğinde interpreter devreye girer ve işletim sistemi interpreterin yardımıyla Basic komutlarını tanır. Bu olay sayesinde buna uygun makina dili alt programları çalışır. Yani programın icrası yine makina dili vasıtasıyla yapılır. Bu yüzden arada interpreter olduğundan program daha yavaş çalışır. Fakat aynı program makina dili ile yapılsaydı, arada interpreter olmayacağından maksimum hızda çalışacaktır. Yüksek hızda icra kabiliyeti olan pek çok program olmasına rağmen, hiçbirisi makina dilinin hızına erişemez. Ayrıca, makina diline hakim olunduğu takdirde, diğer programların kendi çalışma mekanizmaları nedeniyle meydana getirdiği pek çok kısaltmadan kurtulmuş olunur. Makina dilinin kullanılması ile aynı anda birkaç programın birlikte çalıtırılması bile mümkündür. Yani kısacası, makina dilini kullanarak yapamayacağınız şey yoktur. Makina dili ikilik sayı sisteminde çalışmaktadır. Bu sayı sisteminde çalışmak zor olduğundan makina dili komutlarının hexadecimal veya üç harflik kısa gösterimlerini mümkün kılan programlar kullanmak yerine olur. Bu programların başlıcaları Macro assembler ve Assembler Editor programlarıdır. MAKİNA DİLİNİN MANTIĞI Makina dili karmaşık görünmesine rağmen aslında diğer dillere nazaran çok daha basit mantıklıdır. Bu mantık aşağıda gösterilen şekilde açıklanabilir: 1. Bir bellek adresinin değerini değiştirme işlemi. 2. Bir byte'lık bir sayı üzerinden basit aritmatik ve mantık işlemleri yapmak. 3.Program akışı içinde bir noktadan diğerine atlama işlemi. Bilgisayarınız, 65536 adet bellek adresine sahiptir. Örneğin 40000 sayısı ekranın sol üst köşesinin koordinatlarını gösteren bellek adresidir. Bilgisayarınızıbir sokağa benzetirseniz, bellek adresi de kapı numaralarını gösterir. Bu adreslerden kimisi dolu, kimisi boştur. Yapacağınız programları boş olan adreslere yazmanız gerekir. Yaptıracağınız işlemleri ise o işle görevli dolu adreslere yaptırmalısınız. Hangi adreslerin dolu, hangi adreslerin boş olduğunu aşağıda belirttik. Önünüzdeki sayılarda dolu adreslerin hangi işlevleri gördüğünü birlikte inceleyeceğiz. Bu işlevleri, ilgili adrese 1- 255 arasında bir değer koyarak yaptırabiliriz. Şimdi yukarıda bahsettiğimiz adres dağılımınıinceleyelim. 0- 1151 İşletim sistemi tarafından kullanılır. 1152 - 1791 Atari'ye ait dillerde özel işlemlerin yapımında kullanılan hafıza bölümü. 1792 - 6780 FMS-SYS veya DOS-SYS bu bölgeye yüklenir. Yüklenmemişse, kullanıcıya ait. 6781 - 7548 Disket işlemleri için buffer bölgesi. 7549 - 13061 Disk işletim sisteminin yüklendiği bölge. DUP-SYS yüklü değilse kullanıcaya ait. 13062 - 32767 Kullanıcıya ait bölge. 32768 - 49151 Kartuş bölgesi. 40000 - 49151 Ekran bölgesi. 49152 - 65536 İşletim bölgesi. Bu aylık bu kadar, önümüzdeki aylarda bu konuyu tüm ayrıntılarıylaanlatmaya devan edeceğiz. Tabii sizin için seçtiğimiz güzel oyunlarla birlikte. Herşeyin gönlünüzce olmasını dileriz.

Klavyeyle gezinmek için ← ve → tuşları.