C++ Ders 3[Assembly Dili]

Life Hunter

Lapis Toplayıcısı
En iyi cevaplar
0
3.Derse hepiniz hoşgeldiniz, Bu ders Assembly dilini inceleyeceğiz.

Assembly:
İkili sayı sistemi makineler için uygundur,ancak insanların çalışabilmesi için uygun değildir. İnsanlar sayılar yerine anlamlı olan kelimelerle daha rahat çalışırlar.
Örneğin bir hafıza hücresindeki veriyi başka bir hafıza hücreye taşımaya yarayan komut "mov" ismi ile temsil edilir.
Aynı şekilde toplama işlemi "add",çarpma işlemi "mul",çıkarma işlemi ise "sub" ismi ile temsil edilir.
Bu temsili konutların hepsi Assembly(Sembolik) dilini oluşturur.

Assembler:
Assembly dili ile program yazmak makine dilindekine oranla çok daha kolaydır. Fakat işlemci assembly(sembolik) dil ile yazılmış olan komutları anlamaz. İşlemciye gönderilmeden önce assembly dili ile yazılmış olan kodların makine diline çevrilmesi gerekir. Assembler bu işlemi yapar,Girdiğimiz assembly kodunu makine diline çevirir.
Assembler'ın yaptığı işlem çok basit çünkü her assembly komutunun bir makine kodu karşılığı var. Örneğin "mov"'un direk olarak bir makine kodu karşılığı vardır.
Her assembly komutunun birer makine kodu karşılığı olduğu için makine koduna çevirme işlemi de çok uzun sürmez.

Eskiden programcılar kağıt üzerine assembly kodlarını yazar, daha sonra komut setine bakıp kendi yazdıkları assembly kodlarının makine diline karşılığını kendileri bulurlardı.
İlla bir Assembler'a gerek yok yani makine koduna çevirme işlemi için kendinizde çevirebilirsiniz :D Assembler kolaylık sağlıyor tabii ki assembler kullanmak daha mantıklı bir tercih olacaktır.

Punched Card:
Ayrıca eskiden punched card adı verilen mekanizmalar kullanılırdı. Bu punched card lar delikli kartlardır. Deliğin oldu kısım 1, olmadığı kısım ise 0 ı temsil eder. Makineye bilgiyi bu kartlar ile yollanılırdı. Makinede ordan 0 ve 1 leri okur ve ona göre komutları işletirdi.
Linki görebilmek için üye olmanız gerekiyor. Giriş yap veya üye ol.

Yazılan kodun tek bir karta sığmadığı durumlarda birden fazla kart kullanılırdı. Bu kartlar sıra ile bilgisayara yüklenerek işlemciye yollanırlar.
Kartı verme sırası önemlidir. Örneğin 100 satırlık bir programınız var ve 100 satır tek bir karta sığmadığı için ilk 50 satırı bir karta, son 50 satırıda başka bir karta girdiniz. Eğer ilk başta son 50 satırın olduğu kartı verirseniz işlemci son 50 satırı okuyacaktır ve program çalışmayacaktır.
 
R

Reloven

Ziyaretçi
Bu Konuları Uğraşıp Açıyorsun Ama Kimsenin Taktıgını Zannetmiyorum Emeğin Boşa Gidiyor Farklı Forumlarda Aç Bence :)
 

Life Hunter

Lapis Toplayıcısı
En iyi cevaplar
0
Bu Konuları Uğraşıp Açıyorsun Ama Kimsenin Taktıgını Zannetmiyorum Emeğin Boşa Gidiyor Farklı Forumlarda Aç Bence :)
Forumda ilgili olan kişiler pek fazla yok haklısın. Ama ilgilenen küçük bir kitle de var. Bir kişiye bile yararlı bilgiler verebildiysem emeğim boşa gitmiş sayılmaz. Hem yazdığım dökümanları da not alıyorum zaten eğer ilerde site açarsam orda paylaşmak üzere.
 

efe2002ozyay

Obsidyen Madencisi
En iyi cevaplar
0
C dilini biliyorum/biliyoruz çünkü etrafta birçok tutorial var.Java'ya ne dersin?
 

Life Hunter

Lapis Toplayıcısı
En iyi cevaplar
0
C dilini biliyorum/biliyoruz çünkü etrafta birçok tutorial var.Java'ya ne dersin?
Bu C değil C++. Ayrıca şu ana kadar hazırladığım dersler uygulama dersi değildi bilgilendirme amaçlı derslerdi zaten. Yani C++ ile pek bir alakası yok ilk derslerin çünkü programlama öğrenmeden önce işin nasıl gerçekleştiğini öğrenmek gerekir. Üniversitelerde de direk programlama öğretilmez zaten ilk başta bu tür şeyler anlatılır. Olması gerekende budur.[DOUBLEPOST=1436050719,1436050586][/DOUBLEPOST]
Şuanda arkadaşın tüm hevesini kırdın
Hevesim kırılmaz çünkü bu dersleri anlatmamın sebebi türkçe kaynakların pek çok eksiği olduğunu görmem. Bende kendi anlatımımla gördüğüm eksikleri yapmayarak size aktarmaya çalışıyorum.
 

efe2002ozyay

Obsidyen Madencisi
En iyi cevaplar
0
Bu C değil C++. Ayrıca şu ana kadar hazırladığım dersler uygulama dersi değildi bilgilendirme amaçlı derslerdi zaten. Yani C++ ile pek bir alakası yok ilk derslerin çünkü programlama öğrenmeden önce işin nasıl gerçekleştiğini öğrenmek gerekir. Üniversitelerde de direk programlama öğretilmez zaten ilk başta bu tür şeyler anlatılır. Olması gerekende budur.[DOUBLEPOST=1436050719,1436050586][/DOUBLEPOST]
Hevesim kırılmaz çünkü bu dersleri anlatmamın sebebi türkçe kaynakların pek çok eksiği olduğunu görmem. Bende kendi anlatımımla gördüğüm eksikleri yapmayarak size aktarmaya çalışıyorum.
Elbette ilk önce bir mantık kavranır , algoritma uazması ve mantığı öğretilir vs vs.
Ben diyorum ki c++'ı bitirdikten sonra Java'ya geçmen , hem senin için hemde bizim için daha verimli olur.
(Bu arada C dedim çünkü c++ da C ailesinin ürünüdür.)
[DOUBLEPOST=1436051502][/DOUBLEPOST]
Şuanda arkadaşın tüm hevesini kırdın
Hevesi bu kadar çabuk kırılsaydı c++ öğrenemezdi merak etme sen B).
 

Life Hunter

Lapis Toplayıcısı
En iyi cevaplar
0
Elbette ilk önce bir mantık kavranır , algoritma uazması ve mantığı öğretilir vs vs.
Ben diyorum ki c++'ı bitirdikten sonra Java'ya geçmen , hem senin için hemde bizim için daha verimli olur.
(Bu arada C dedim çünkü c++ da C ailesinin ürünüdür.)
[DOUBLEPOST=1436051502][/DOUBLEPOST]
Hevesi bu kadar çabuk kırılsaydı c++ öğrenemezdi merak etme sen B).
Java asla geçmem. Eğer OOP öğreteceksem C# öğretirim. Çok daha üstün bir dil. Ayrıca C demen yanlış çünkü C de class lar yoktur ve class ların olmaması bu 2 dili ayıran en büyük farklardan biri.
 

Axel102

Hayalet Avcısı
En iyi cevaplar
6
Elbette ilk önce bir mantık kavranır , algoritma uazması ve mantığı öğretilir vs vs.
Ben diyorum ki c++'ı bitirdikten sonra Java'ya geçmen , hem senin için hemde bizim için daha verimli olur.
(Bu arada C dedim çünkü c++ da C ailesinin ürünüdür.)
[DOUBLEPOST=1436051502][/DOUBLEPOST]
Hevesi bu kadar çabuk kırılsaydı c++ öğrenemezdi merak etme sen B).
Belki öğrenirken biriktirdi biriktirdi şimdi patladı nolucak ?
 
Üst