Assembly ile neler yapılabilir?

engin0808

Üye
Katılım
28 Nis 2011
Mesajlar
144
Puanları
1
Meraba

Assembly diline başlamak istiyorum. Ancak Pic prpgramlamak dışında bu dille neler yapılabilir? Örneğin, çok zorda olsa bir windows formu oluşturulabilirmi? Sadece olabiliritesini soruyorum, yoksa amacım sadece pic programlamak.
Bu dilin geleceği ne, yani örenmek yersizmi olur? Çünkü çok eski bir dil sanırım. Bu dille ilgili bildikleriniz nelerdir? Çünkü bu dilin sadece MPLAB üzerinde yaptığımız işlemlerden ibaret olmadığını düşünüyorum.
 
Bilgisayar ortaminda cok istisna isler disinda assembly kullanilmaz. O nedenle bilgisayar programlamada pratikte bir isine yaramaz.
 
anlladım ama en tehlikeli virüsler bu dille yazılıyomuş diye duydum.. yanlış anlamayın ben yazmıcam da :D sadece sorim dedim
? ? ? ?
 
Bu işin mantığı şöyle, Elektronik ortamda gördüğünüz her şey 1 ve 0 dan oluşur. Videolar, resimler word ve excel dosyaları vb. C++ , Delphi, C# gibi diller sizin yazdığınız kodu önce makine diline çevirir sonra kod çalışır. Bu sırada bir çevirim işlemi olduğu için çalışması assambly ye göre yavaş olur. Fakat programı C++ , Delphi, C# gibi dillerle yazma süreniz en az 20 kat daha hızlı olur. Assambly de hız gereken rpogramlar yazmalısınız. Diyelimki kamerada aldığı yol cigilerini takip ederek kendi kendine giden bir araba yapıyorsunuz. Programı c de yazarsanız kameradan görüntü size gelene kadar araç çizgiyi geçecektir. Bu durumda assambly yi kullanırsınız.
 
... Diyelimki kamerada aldığı yol cigilerini takip ederek kendi kendine giden bir araba yapıyorsunuz. Programı c de yazarsanız kameradan görüntü size gelene kadar araç çizgiyi geçecektir. Bu durumda assambly yi kullanırsınız.

Burada C ye haksızlık yapıyorsunuz. Diller tek başına, bu değerlendirme için yeterli değildir. Kötü bir ASM coder ile iyi bir C coder aynı kodu yazar ve C ile yazılan kod çok daha efektif çalışabilir. Kodlayan kimseden, donanıma kadar bir çok hesaba katılması gereken parametre vardır.
Assembly ile kod yazarken hata yapma ihtimaliniz oldukça yüksektir ve debug konusu ciddi bir sorundur.
Eskiden assembly kullanırdık çünki mcu lar sınırlı imkanlara sahipti ve kaynak kullanımı oldukça önemli idi, şu an bu tip sorunlar neredeyse kalmadı bu sebeple kritik noktalar hariç assembly kullanımına da gerek kalmadı. Günümüzde hızlı ürün çıkarmak ve hızlı debug yapmak çok daha ekonomiktir. Bu sebeple çok ciddi miktarlar sözkonusu değilse 50-100byte hesabı yapacağım diye 50 cent ucuz mcu aramak büyük hatadır.

Bu arada;

Engin Bey MPlab üzerinde yazdığınız assembly kodlar PIC ailesi içindir ve başka ailelere uygulayamazsınız. Windows vb os ler için olan Assembly farklı bir kulvardır.
 
C++ , Delphi, C# gibi diller sizin yazdığınız kodu önce makine diline çevirir sonra kod çalışır. Bu sırada bir çevirim işlemi olduğu için çalışması assambly ye göre yavaş olur.

C++, Delphi (yani Pascal'da) yazilan kodlar calisma aninda makine diline cevrilmez, onceden zaten cevrilmis olur. Ayni Assembly ile yazilan kodun da onceden makine koduna cevrilmis olmasi gerektigi gibi. Dolayisi ile ister Assembly ister C ile yazilmis olsun calisma aninda bir cevrim islemi yapilmaz.

Diyelimki kamerada aldığı yol cigilerini takip ederek kendi kendine giden bir araba yapıyorsunuz. Programı c de yazarsanız kameradan görüntü size gelene kadar araç çizgiyi geçecektir. Bu durumda assambly yi kullanırsınız.

Gercek zamanli uygulamalarin nerede ise tamami C ile yaziliyor. Eger C'den kaynaklanan bir yavaslik olsaydi gercek zamanli uygulamalarda C kullanilmazdi.
 
Bazı oyunların belirli kısımları da assembly ile yazılıyor, ayrıca belirttiğiniz gibi en etkili virüsler assembly ile yazılır. Çünkü assembly ile çok geniş bir alana sahipsiniz, doğrudan makine ile iletişime geçebiliyorsunuz. C++ gibi orta seviye dillerde araya bir tercüman girer ve esnekliğiniz az da olsa kaybolur. Ancak C ve C++ yine de makine ile iletişim için çoğu zaman yeterlidir. Çok nadir uygulamalar dışında assembly yerine C kullanmak size bir şey kaybettirmez. Ancak assembly kullanmaya kalkmak işin içinden çıkılmaz bir hale sokabilir sizi.
 
windowsun da uygulamalarınının büyükbir kısmını c# ile yazıp açılış fln gibi kritik yerlerde assembly kullandığını duymuştum....
 
bu dil en alt seviye dildir. bunun bir altı 1 ler ve 0 lar.....
 

Forum istatistikleri

Konular
129,775
Mesajlar
929,998
Kullanıcılar
452,544
Son üye
Beratkya

Yeni konular

Geri
Üst