Press "Enter" to skip to content

“Assembly”

Assembly Dili

Assembly programlama dili, kullanılan bilgisayar sisteminin yapısına ve işletim sistemi gibi platformlara sıkı-sıkıya bağımlı bir dildir. Assembly programlama dili düşük seviyeli bir dil olup C, C++, Pascal, C# gibi yüksek seviyeli programlama dillerine göre anlaşılması biraz daha zordur. Assembly dili ile program yazarken kullanılan bilgisayarın donanımsal özelliklerinin bilinmesi gerekir. Yazılan program kullanılan mikroişlemcinin yapısına bağlıdır. Assembly dili ile program yazarken programcı doğrudan bilgisayarın işlemcisi ve hafızası ile uğraşır. Ana bellekteki (RAM’deki) ve işlemci kaydedicilerindeki değerleri doğrudan değiştirebilme imkanı vardır.

Mikroişlemci sadece ikili sayı sisteminde yazılan komut kodlarını, başka bir ifade ile makine dilinden anlar. Assembly dilinde yazılan programları makine diline çevirmek için Assembler adı verilen çevirici(derleyici) programlar kullanılır. Aşağıda verilen şekilde Assembly dili, Makine dili ve Assembler blok olarak görülmektedir.

Bilgisayarımızda çalıştırılan tüm programlar önce bilgisayarımızın RAM belleğine yüklenir. Daha sonra RAM bellekten sırası ile mikroişlemci tarafından okunarak çalıştırılır. RAM’e yüklenen veri programın makine dili karşılığından başka bir şey değildir. Yani 0 ve 1 kümeleridir. Makine dilinde program yazmak oldukça zordur. Buna karşılık makine dili ile birebir karşılığı olan ve komutları kısaltılmış kelimelerden (mnemonik) oluşan bu dilden yararlanılır. Program yazmak makine dilinde program yazmaya göre daha hızlı ve daha kolay yapılabilir. Ayrıca yazılan programların bellekte kapladıkları yer de aynıdır. Başka bir ifade ile bellek kullanımları aynıdır. Yüksek seviyeli dillerle karşılaştırıldığında assembly dilinde yazılan programlar daha hızlıdır ve bellekte daha az yer kaplar. Buna karşılık program yazmak yüksek seviyeli dillerde daha kolaydır. Günümüzde daha çok sistem programcıları tarafından diğer programlama dilleri içerisinde kullanılmaktadır.

Dezavantajları

  • Program yazmak için mikroişlemci iç yapısı bilinmesi gerekir.
  • Mikroişlemci tipine göre değişir. Bir mikroişlemci için yazılan bir program başka bir mikroişlemcide çalışmayabilir. Program taşınabilir platformdan bağımsız değildir.
  • Program yazmak yüksek seviyeli dillere göre daha zor ve zaman alıcıdır.

Avantajları

  • Bigisayar donanımı üzerinde daha iyi bir denetim sağlar. İşlemcinizin gücünü en iyi şekilde ortaya koyabilecek tek programlama dilidir.
  • Küçük boyutlu bellekte az yer kaplayan programlar yazılabilir. virüslerin yazımında kullanılırlar.
  • Yazılan programlar daha hızlı çalışır. Çok hızlı çalıştıkları için işletim sistemlerinde ve donanım sürücülerinin programlanmasında, hız gerektiren kritik uygulamalarda kullanılmaktadır.
  • Herhangi bir programlama dili altında, o dilin kodları arasında kullanılabilir.
  • İyi öğrenildiğinde diğer dillerde karşılaşılan büyük problemlerin assembly ile basit çözümleri olduğu görülür.

Asal Çarpan Assembly Kodu

Bedirhan Sağlam 1

Asal Çarpan Nedir? Bölünmeyen çarpan ya da 1 ve kendinden başka tam böleni olmayan çarpan. Asal bölen de denir. Asal çarpan, sayılarda asal sayı, matematiksel ifadelerdeyse, tam böleni olmayan ifadedir.…

Assembly Random Sayı Üretmek

Bedirhan Sağlam 0

Assembly Random Sayı Üretmek Assembly programlama dilinde 0-255 arasında rastgele bir sayı oluşturacağız bugün , kısaca Assembly Random Number üreteceğiz. Bu işlem için interruptslardan yararlanacağız.Uzatmadan kısaca kodunu ve açıklamasını vereyim.…

Emu8086 Nasıl Yeni Proje Açılır ?

Bedirhan Sağlam 0

Emu8086 Nasıl Yeni Proje Açılır ? emu8086 programı ile yeni proje nasıl açılır ve proje kodları nasıl derlenir kısaca göz atacağız. Programı çalıştırıyoruz 1 -Sol üstte new butonuna tıklıyoruz 2-Açılan…

emu8086 Nasıl Yüklenir? Lisanslanır?

Bedirhan Sağlam 0

Merhaba arkadaşlar , bugün emu8086 emülatör programını nasıl kuracağınızı kısaca anlatacağım. öncelikle buradan  emu8086v408r11  rar dosyamızı indiriyoruz. İndirdiğimiz rar dosyasını çıkartıyoruz ve setup.exe yi çalıştırıyoruz. Resimdeki adımları izleyerek kurulumu sorunsuzca…

Assembly ile Faktöriyel Almak

Bedirhan Sağlam 0

Assembly ile Faktöriyel alma konusuna değineceğiz. Öncelikle faktöriyel nedir? Faktöriyel nedir? Faktöriyel, matematikte, sağına ünlem işareti konulmuş sayıya verilen isim, daha genel olan Gama Fonksiyonu’nun tam sayılarla sınırlanmış özel bir…

Assembly Örnekler

Bedirhan Sağlam 6

Assembly Örnekler Assembly öğrenmeye yeni başlayanlar için sorular ve cevaplarla assembly örnekler. Soru: 0200:0400h bellek adresindeki 40h sayisi ile 0200:0500h adresindeki 50h sayisini toplayan, toplamdan 10 sayisini cikaran ve sonucu…

Assembly String İşlemleri

Bedirhan Sağlam 0

Assembly String İşlemleri   String (karakter dizisi) komutları bellekte blok halinde byte , word ve doubleword verileri üzerinde çalışmada kullanılır. Bir dizi verinin string olabilmesi için belli özelliklerde tanımlanması gerekir.…