NEDEN NASIL NİÇİN ?

AYKANUS
06-01-2009, 13:34   |  #1  
OP Yıllanmış Üye
Teşekkür Sayısı: 0
329 mesaj
Kayıt Tarihi:Kayıt: Nis 2007

Arkadaşlar hep duymuşsunuzdur Assembly yazılan kod C/C++ ile yazılan koddan daha hızlı çalışır.
C/C++ ile yazılan kod diğerlerinden daha hızlı çalışır

cümleyi anladık peki bunu nasıl açıklarsınız
hazır standart cevaplar dışında derinlemesine bir analiz ile cevaplarsanız sevinirim Belkide benim gibi bir çok aceminin programlamayı anlamasına yardımcı olursunuz
Çünkü bu programlama işinde anladığım kadarıyla kilitli diyebileceğimiz noktalar
var o noktayı çözersen  gerisini  çorap söküğü gibi gelir
doğrumu söylüyorum bir cevap

Kapalı Hesap (79876)
06-01-2009, 17:46   |  #2  
Kapalı Hesap
Teşekkür Sayısı: 0
1,252 mesaj
Kayıt Tarihi:Kayıt: Tem 2008

Ansiklopedik bilgi vermiyecem
Bütün programlamanın temeli assembly c/c++ de yazılan programlar assembly'e çevrilir. İşlemcinin anlayabildiği dildir. Bir exe assembly komutlarından oluşur. Program crackleri  bu assembly diline müdahale ederek yapılıyor. Bir nevi hacker dili sayılabilir.
assembly hızlıdır çünkü işemcinin dilidir.  Assemblyda program yazmak tam bir hamallıktır. chip'i çok eski sayılarından birinde 64k muzizesi diye programlar vardı. 64 kb lık programların neler yaptığını gördüğümde ağzım açık kaldı. Assembly  mucizesi işte.


Şu yazı neden hızlı olduğunu açıklıyor.

Makinanın anlayabildiği tek dil 0 1 dir. zamanında abiler delikli kağıtla programlama yaparken demişlerki hocam bu çok kasıyor. biraz bu işi kolaylaştıralım makina dilini yazmışlar. makina dili çok hızlıdır. çünkü yapılan tek işlem hex i bin e çevirmek. Assembly ise biraz daha insancıl olsun :) kafayı yicez abi deyip te makina dilinde yazılmış bir dildir. Fakat Assembly ile Makina dili arasındaki ilişki diğer diller ile makina dili arasındaki ilişkiden farklıdır. örneğin: "cmp al" nin karşılığı "3c" dir. diğer dillerde dilin türüne göre interpreter(yorumlayıcı) veya compiler(derleyici) hatta bazılarında her ikiside kullanılıyor olmasına karşılık makina diliyle "01h" nasıl "00001b" ediyorsa "cmp al" da Assemblyde "3c" eder. buda asseblynin önemsenmeyecek kadar kadar azbir hız farkıyla çalışmasını sağlar.

Makina Dili
a. Makina Dili 00001011 11010111 11010110 ....................... İkili Sistem
b. Makina Dili DF AC 12 1B 3C C8 D6 7B C8...................... Onaltılı Sistem
c. Mnemonic(Assembly Dili)
MOV AX,65
ADD BX,AX
.
.
.

Assembly Dili'nin Makina Dili ile ilişkisi bu şekildedir. Yukarıda yazılı kodlar sadece görsel bir fikir verebilmek için yazılmıştır. Çalışır program parçaları değildir.

Kaynak::

Bunun hakkında ansiklopedik bilginin daha fazlası googlede mevcut. Assembly nedir diye aratırsan. senin aradığın sonuçlara ulaşabilirsin.
Asseblyde program yazmak için hangi araçlar var diye sorarsan: "blasm" diye aratıver.

eof-

Son Düzenleme: Kapalı Hesap (44931) ~ 06 Ocak 2009 17:50
Kunduracıcocuk
19-02-2009, 13:18   |  #3  
Taze Üye
Teşekkür Sayısı: 0
2 mesaj
Kayıt Tarihi:Kayıt: Şub 2009

Cok guzel bılgıler bunlar ama daha farklı olabılırdı bende bılısım egıtım merkezınde egıtım alıyorum bı ara tuttugun notları derleyıp paylasacagım ıns.