|
|
 Assembly For Windows Türkçe Görsel Eğitim Seti
Assembly Nedir?Windows Tabanlı Bir Assembly Uygulamasının Genel Yapısı , Registry , Library , OLE ve COM Yapıları , 32 Bit Makine Dili Mimarisi ve Assembly Uygularımının Yapısı , ASMStudio ( Assembly Editörü ) ve Kullanımı API'ler ve Bellek İşlemleri , Makine Dili Komutları ve Uygulamalar.
Assembly İndeksi
01 – Assembly Editörü 02 – File Menüsü 03 – Edit Menüsü 04 – View Menusu 05 – Project ve Build Menusu 06 – Tools Menusu 07 – Window ve Help Menuleri 08 – Kisaca Windows 09 – Kysaca Windows' un Tarihi ve Uygulamalaryn Yapysy 10 – Registry, Library, OLE ve COM Yapylary 11 – 32 Bit Makine Mimarisi ve Assembly Uygulamalarinin Yapisi 12 – Degiskenler 13 – Genel Kaydediciler ve Sayi Sistemleri 14 – Sayi Sistemlerinde Ceviri Teknigi 15 – Kaydedicilerin Kullanimi ve Diger Kaydediciler 16 – Bit-Byte Kavramlari 17 – Bir Assembly Uygulamasinda Kullanilan Bolumler ve Assembly Ile Uygulama 18 – Gelistirmek 19 – Windows Tabanli Bir Assembly Uygulamasinin Genel Yapisi 20 – Kisaca Program Tanitimi, Include, Data ve Const Alanlari 21 – Programda Code Bolumu 22 – Kisaca API hakkinda ve WINDOWS_INC dosyadi 23 – Ilk Dialog Projesine Baslangic 24 – Dialog Penceresinin Yaratilmasi ve Hayat Proseduru 25 – ShowSystemFailure Procedure Tanitimi 26 – Sistemden Bellek Talep Eden NewMem Fonksyonu 1 27 – Sistemden Bellek Talep Eden NewMem Fonksyonu 2 28 – Ayrilan Bellegin Sisteme Geri Iadesi FreeMem Fonksyonu 28 – IntToStr Fonksyonu ve Kullanimi 30 – Temel Fonksyonlarin Kullanimi Ile Dialog Projesinin Tamamlanmasi 31 – Bazi Makine Dili Komutlari 32 – Giris 33 – ADD 34 – AND 35 – CALL 35 – CBW, CWD, CWDE, CDQ 37 – CLC 38 – CMP 39 – CMPSBWD 40 – DEC 41 – DIV 42 – INC 43 – JUMP Komutlary 44 – Offset ve LEA Komutlari 45 – Load ve Store String Komutlari 46 – Loop Komutu 47 – Mov Komutu 48 – Or ve Not Komutlari 49 – Push ve Pop Komutlari 50 – Rep Komutu 51 – Ret Komutu 52 – ROL ve ROR Komutlari 53 – SHL ve SHR Komutlari 54 – Test Komutu 55 – XCHG Komutu 56 – XOR Komutu 57 – Scas Komutlari 58 – Yapilar 59 – STRUCT Yapilari 60 – Donguler 61 – While Dongusu 62 – Repeat-Until Dongusu 63 – Break ve Continue Komutlari 64 – Windows Bilesenleri Hakkinda 65 – Resource dosyasi nedir Ne ise yarar 66 – Temel Bir Windows Uygulamasinin Cekirdegi 67 – Uygulamanin Sisteme Kaydettirilmesi ve WndProc Fonksyonunun Tanitilmasi 68 – Menunun Olusturulmasi 69 – Uygulamanin Calistirilmaya Ilk Hazirlanisi ve Menulerin Kullanilmasi 70 – Editor Programina Giris ve Open File Dialogu Kullanimi 71 – Save File Dialogu Kullanimi 72 – Rich Edit Nesnesi ve Kullanimi 73 – Bir Dosyanin Okunarak Editore Yuklenmesi 1 74 – Bir Dosyanin Okunarak Editore Yuklenmesi 2 75 – Cut, Copy, Paste, Undo ve Delete Menulerinin Calistirilmasi 76 – Kisayol Tuslarinin Calistirilmasi 77 – Toolbar Nesnesinin Olusturulusu ve Kullanimi 78 – Toolbar Buttonlarinin Calisir Hale Getirilmesi 79 – Statusbar Nesnesinin Yaratilmasi, Resize Edilisi ve Bolumlere Ayrilmasi 80 – CapsLock ve NumLock Tuslarinin Statusbarda Gosterilmesi 1 81 – CapsLock ve NumLock Tuslarinin Statusbarda Gosterilmesi 2 82 – About Dialogunun Hazirlanisi 83 – View Menusunu Olusturmak, Registery Kullanimina Hazirlik 84 – Menu SonDurumlarinin Registerye Kaydedilmesi ve Okunmasi 85 – Statusbar ve Toolbar Nesnelerinin Ilgili Menuler Ile Gizlenmesi ve Gosterilmesi 86 – Options Ekrani Uzerinde Property Sheet Dizayni 87 – Font Dialogu Yardimiyla Bir Fontun Secilmesi 88 – Secilen Fontun Editore Uygulanmasi 89 – CheckBox ve Radio Button Kullanimi 90 – Disk Uzerinde Bir Klasor Secmek 91 – Dosyanin Diske Kaydedilmesi 92 – Find Dialogunun Olusturulusu 93 – New Instance ve Exit Islemleri 94 – TreeView ve ListView Bilesenleri 95 – TreeView 96 – TreeView Uzerinde Image Kullanimi 97 – ListView Kullanimi 98 – Araçlar 99 – AsmStudioInstall 100 – Help 101 – Projeler http://rapidshare.com/files/203073694/assembly.gorsel.part1.rar http://rapidshare.com/files/203073686/assembly.gorsel.part2.rar http://rapidshare.com/files/203073690/assembly.gorsel.part3.rar http://rapidshare.com/files/203073697/assembly.gorsel.part4.rar http://rapidshare.com/files/203073696/assembly.gorsel.part5.rar http://rapidshare.com/files/203091559/assembly.gorsel.part6.rar
Dünyadaki en güçlü uyuşturudur. Çavdar ve diğer tahıllarda yetişen bir tür mantar olan, ergot bitkisinin bir bileşiği olan, liserjik asitten üretilir. 30 gram LSD 300.000 doz için yeterlidir. 30 mikrogram (gramın milyonda biri); kullanan şahsın kendisinden geçmesini sağlaması için yeterlidir. Etkisi en az 16 saat sürmektedir. Eğer bu miktar biraz fazla alınacak olursa insanı çıldırtır bunun devamında ise intihar ve cinayetlerin gelmesi kaçınılmazdır.
|
kaygusuz

Kayıt : 6 Nisan 2007 misak-i milli
|
|
teşekkürler. eyvallah. kimsenin ilgisini çekmiyor sanırım. eğitim adına büyük paylaşım.
O şimdi Asker. jandarma komando...
|
yafa13

Kayıt : 1 Kasim 2007 İst/Elb
|
|
Bendede vardı kaybetmişim teşekkürler upload için...
|
Allura

Kayıt : 17 Mayis 2009 syn
|
|
böle bi eğitim setine can kurban eyvallah asm önemlidir boşverin vbyi asm rlz
knowyourMEME
|
|
|
ii paylaşım eywallah :)
spor akademisi hazırlık kurslarımız ankarada açılmıştır.tbt dekilere duyurulur.firtina_kickbox@hotmail.com
|
|
|
Allura bunu yazdı: ----------------------------- böle bi eğitim setine can kurban eyvallah asm önemlidir boşverin vbyi asm rlz -----------------------------
bana piyasada asm ile yapılmş büyük çaplı bir program gösterir misin? Ben sana vb de gösterebilrim! Asm yi öğrenen adamlar program yazmak için öğrenmzler. mikroişlemci programalama yada crackingte kullanılır genellikle. Onun dışında bir form koyup bir buton koyum bir mesaj verdirmek için onlarca kod yazıyorsun. Burada program yazmak akıl harcı değil. Zaten alt seviyeli bir dil, yani programıcı dostu değil :) donanım programlama yapabilirsin onla da bu iş profların işi zaten..
Biraz bilmek tehlikelidir. Ya derinliklerden iç ya da bilgeliğin tadını tatmaya kalkma! Çünkü sığ sular beyni zehirler, bol sular insanı temizler....-------------------pompey-------- legion_of_doom, 24 Kasim 2009 (Sali) 13:04 tarihinde Türkiye AB'ye girene kadar uzaklaştırıldı.
Uzaklaştırılma Sebebi: 3.Seferdir forumda trojan paylaşmaya calışıyor...
|
|
|
kaygusuz bunu yazdı: ----------------------------- teşekkürler. eyvallah. kimsenin ilgisini çekmiyor sanırım. eğitim adına büyük paylaşım. ----------------------------- egitim adina derken ? legion_of_doom a katiliyorum. paylastigin icin cok sagol kardes tesekkur ediyorum. fakat bu ne ya bilen bilmeyen her seyi yaziyor bos verin vb yiymis. Visual Basic`i sen hatimmi ettinki böyle söylüyorsun...?
Nasıl ki doyurulmayan açlık bir müddet sonra, açlık hissinin iptali ve neticede ölüme yol açıyorsa, okuma ve fikretme davası için de aynı şeyler sözkonusu...
|
|
|
legion_of_doom bunu yazdı: ----------------------------- Allura bunu yazdı: -----------------------------
böle bi eğitim setine can kurban eyvallah asm önemlidir boşverin vbyi asm rlz -----------------------------
bana piyasada asm ile yapılmş büyük çaplı bir program gösterir misin? Ben sana vb de gösterebilrim! Asm yi öğrenen adamlar program yazmak için öğrenmzler. mikroişlemci programalama yada crackingte kullanılır genellikle. Onun dışında bir form koyup bir buton koyum bir mesaj verdirmek için onlarca kod yazıyorsun. Burada program yazmak akıl harcı değil. Zaten alt seviyeli bir dil, yani programıcı dostu değil :) donanım programlama yapabilirsin onla da bu iş profların işi zaten.. ----------------------------- Tüm işletim sistemlerinin boot manager ve loader ları, birçok ileri seviye virüs, çok büyük projelerin bazı modülleri (örneğin nero'nun dma erişimi modülü), assembly ile yazılır. Visual basic ve assembly aynı kulvarda değil dostum, karşılaştırma yapman yanlış, bir reserve engineer assembly bilmese program kırabilir mi, o çok sevdiğin programların, crack ini keygenini patch ini assembly e borçlusun. Bu yüzden kimseyi soğutmaya hakkın yok. Ben de Asm ile windows programları yazılmasından hoşlanmıyorum, çünkü her işi windows apileri yapıyor ve apiler zaten C ile yazılmış kodlar olduğu için assembly nin kullanım amacı olan hız, C nin önüne zaten geçemiyor, zaten assembly ile windows programları yapılmamasının sebebi bu, ancak sandığın gibi bir button tıklamak için yüzlerce kod yazılmıyor, C ile hemen hemen aynı kodlar yazılıyor, button nesnesi tanımlanıyor, gerekli apilerle iş yürütülüyor. C ile yazılmış ve Asm ile yazılmış aynı windows programını aşağıda koyuyorum, siz karar verin.... //////////////////////////////////////////////////////// C İLE YAZILMIŞ #include
long APIENTRY MainWndProc(HWND, UINT, UINT, LONG);
char ClassName[]="Window Class"; char AppName[]="Application" ;
int APIENTRY WinMain( HINSTANCE hInstance, HINSTANCE hPrevInstance, LPSTR lpCmdLine, int nCmdShow ) { HWND hwnd; WNDCLASSEX wc; MSG msg;
int girdi;
wc.cbSize = sizeof(WNDCLASSEX) ; wc.style = CS_HREDRAW|CS_VREDRAW ; wc.lpfnWndProc = (WNDPROC)MainWndProc; wc.cbClsExtra = NULL; wc.cbWndExtra = NULL; wc.hInstance = hInstance; wc.hIcon = LoadIcon( NULL,IDI_APPLICATION) ; wc.hCursor = LoadCursor (NULL,IDC_ARROW); wc.hbrBackground = COLOR_BTNFACE; wc.lpszMenuName = NULL; wc.lpszClassName = ClassName; wc.hIconSm = wc.hIcon ;
RegisterClassEx(&wc);
hwnd = CreateWindowEx(NULL, ClassName, AppName, WS_OVERLAPPEDWINDOW, CW_USEDEFAULT, CW_USEDEFAULT, CW_USEDEFAULT, CW_USEDEFAULT, NULL, NULL, hInstance, NULL);
ShowWindow (hwnd,SW_SHOW); UpdateWindow (hwnd);
while (GetMessage(&msg, NULL, 0, 0)) { TranslateMessage(&msg); DispatchMessage(&msg); } return (msg.wParam);
}
long APIENTRY MainWndProc( HWND hWnd, // window handle UINT message, // type of message UINT wParam, // additional information LONG lParam) // additional information { if (message==WM_DESTROY) { PostQuitMessage (NULL); } else { return (DefWindowProc(hWnd, message, wParam, lParam)); } return; } ////////////////////////////////////////////////////////////////////////// ASSEMBLY İLE YAZILMIŞ.. .386 .model flat,stdcall option casemap:none include \masm32\include\windows.inc include \masm32\include\kernel32.inc includelib \masm32\lib\kernel32.lib include \masm32\include\user32.inc includelib \masm32\lib\user32.lib WinMain proto :DWORD,:DWORD,:DWORD,:DWORD .data ClassName db "Window Class",0 AppName db "Application",0 .data? hwnd HWND ? girdi LPSTR ? .code start: invoke GetModuleHandle,NULL mov hwnd,eax invoke GetCommandLine mov girdi,eax; invoke WinMain,hwnd,0,girdi,SW_SHOWDEFAULT invoke ExitProcess,eax WinMain proc hInst:HINSTANCE,hPrevInst:HINSTANCE,CmdLine:LPSTR,CmdShow:DWORD LOCAL wc:WNDCLASSEX LOCAL msg:MSG mov wc.cbSize,SIZEOF WNDCLASSEX mov wc.style,CS_HREDRAW or CS_VREDRAW mov wc.lpfnWndProc,offset WndProc mov wc.cbClsExtra, NULL mov wc.cbWndExtra, NULL push hInst pop wc.hInstance invoke LoadIcon,NULL,IDI_APPLICATION mov wc.hIcon,eax mov wc.hIconSm,eax invoke LoadCursor,NULL,IDC_ARROW mov wc.hCursor,eax mov wc.hbrBackground,COLOR_BTNFACE mov wc.lpszMenuName, NULL; mov wc.lpszClassName,OFFSET ClassName invoke RegisterClassEx,ADDR wc invoke CreateWindowEx,NULL,ADDR ClassName,\ ADDR AppName, WS_OVERLAPPEDWINDOW,\ CW_USEDEFAULT, CW_USEDEFAULT, CW_USEDEFAULT,\ CW_USEDEFAULT, NULL, NULL, hwnd , NULL mov hwnd,eax invoke ShowWindow,hwnd,CmdShow invoke UpdateWindow,hwnd tamamla: invoke GetMessage,ADDR msg,NULL,0,0 or eax,eax je yolla invoke TranslateMessage, ADDR msg invoke DispatchMessage, ADDR msg jmp tamamla yolla: mov eax,msg.wParam ret WinMain endp
WndProc proc hWnd:HWND, uMsg:UINT, wParam:WPARAM, lParam:LPARAM
@@: cmp uMsg,WM_DESTROY jne @F invoke PostQuitMessage,NULL xor eax,eax ret
@@: invoke DefWindowProc,hWnd,uMsg,wParam,lParam ret
WndProc endp End start /////////////////////////////////////////////////////////////////////////////// Kodlar Pulsar'a aittir...
E=mc2 ise F=m.a dır
|
|
|
1- alt seviyeli bir dil asla kullanıcı dostu değil, ve herkesin hele hele programlamayı bir meslek olarak yapmayan insanların öğrenmesine gerekli olmayan bir dil 2- asmnin bir çok kullanım alanı var ama bunlar hep profesyonel işlerdir. Basit işlerde asm kullanan adamın aklından şüphe ederim zaten 3- yazdığın o apileri yazmak ne kadar zaman alır? mantık lı mı, yada kopy paste yapmak.. Üst seviyeli diller kullanım kolaylığı açısından çok çok rahat 4- vb ile asmnin farklı olduğu gözler önünde zaten. Ama asmyi normal bir kişinin öğrenmesi gereksiz. Bunu savunan adamdan da aklından şüphe ederim 5- cracking için gerekli olduğunu yazdım zaten.. nasıl neyle ve nerenle okuyorsun
Biraz bilmek tehlikelidir. Ya derinliklerden iç ya da bilgeliğin tadını tatmaya kalkma! Çünkü sığ sular beyni zehirler, bol sular insanı temizler....-------------------pompey-------- legion_of_doom, 24 Kasim 2009 (Sali) 13:04 tarihinde Türkiye AB'ye girene kadar uzaklaştırıldı.
Uzaklaştırılma Sebebi: 3.Seferdir forumda trojan paylaşmaya calışıyor...
|
|
|
legion_of_doom bunu yazdı: -----------------------------
1- alt seviyeli bir dil asla kullanıcı dostu değil, ve herkesin hele hele programlamayı bir meslek olarak yapmayan insanların öğrenmesine gerekli olmayan bir dil 2- asmnin bir çok kullanım alanı var ama bunlar hep profesyonel işlerdir. Basit işlerde asm kullanan adamın aklından şüphe ederim zaten 3- yazdığın o apileri yazmak ne kadar zaman alır? mantık lı mı, yada kopy paste yapmak.. Üst seviyeli diller kullanım kolaylığı açısından çok çok rahat 4- vb ile asmnin farklı olduğu gözler önünde zaten. Ama asmyi normal bir kişinin öğrenmesi gereksiz. Bunu savunan adamdan da aklından şüphe ederim 5- cracking için gerekli olduğunu yazdım zaten.. nasıl neyle ve nerenle okuyorsun ----------------------------- Ortada sinirlenecek birşet yok hocam, Asm yi VB den bile dandik bir dilmiş gibi göstermenden rahatsız oldum çünkü Assembly ile ciddi şeyler yazmış birisi olarak aşağılanması hoşuma gitmedi ... " //2- asmnin bir çok kullanım alanı var ama bunlar hep profesyonel işlerdir. Basit işlerde asm kullanan adamın aklından şüphe ederim zaten" şimdi bu cümle öğrenme demek için mantıklı bir açıklama değil , kimin ne kadar profesyonel olduğunu bilemeyiz, . "//3- yazdığın o apileri yazmak ne kadar zaman alır? mantık lı mı, yada kopy paste yapmak.. Üst seviyeli diller kullanım kolaylığı açısından çok çok rahat" Bu apiler işletim sistemi yazılırken zaten yazılmıştır ve birdaha yazılmaz. Ancak Assembly ile pencereli görsel programlar yazmak, masm ın sağladığı kolaylıklarla C den bile daha basit hal almaktadır. Sandığın gibi herşey sıfırdan yazılmıyor, diğer yüksek seviye diller gibi değişkenler data sectionunda tanımlanıyor, mov ile değer ataması yapılıyor, invoke ile fonksiyon çağırılıyor, "call ile çağırılabilir ancak invoke kolaylık sağlayan bir sahte koddur". Her neyse şimdi uzatmanın anlamı yok sadece şunu bil diğer dillerle yapılan görsel programlarla asm de yapılan görsel programlar arasında dağlar adar fark yok, ne kod sayısında ne de zorluğunda.. İsteyen yazar istemeyen yazmaz ancak daha öncede belirttiğim gibi gereksizdir. Özetle asm paylaşımı yapılmış bir başlığın altında asm gerkesiz öğrenmeyin der gibi mesaj yazarsan bunları söylemem doğal kızacak bir durum yok...
E=mc2 ise F=m.a dır
|
|
|
:) piyasada bana asm ile yazılmış kaç tane full program var gösterebilir misin? insanlar neden asm yi tercih etmiyor. Elbette bazı alanlarda asm kullanırsın.atıyorum işletim sistemi yüklü olan bir parititonu nasıl formatlarsın, burada asm devreye girer ve yapacağını yaparsın.Ama asm ile bir muhasebe programı yapamazsın. O kadar esnek bir değil.alt seviye ve üst seviyenin burada önemli işte. Makine diline yaklaştıkça bir dil zorlaşır. api yazmaktan kastım sıfırdan yazmak değildir elbette, oraya o kadar apiyi eklemek.. bir messagebox için api yi kullanmak (daha doğrusu elle yazmak) diğer dillerde bazı şeyler standartlaşmıştır. Onlar için bazı fonkisyonlar için illa sınıf tanımı,api tanımı v.s. yapman gerek yok.işte bu yüksel seviyenin avantajıdır. Haa diyorsan asm ile vb arasında kod uzunluğu arasında fark yok diyorsan. Bir program yazalım orta derecede uzunlukta. socket kullanan bir mesajlaşma programı yada veritabanına kayıt işlemlri yapan, resimli listesi olan v.s. bakalım kim daha çabuk yapabiliyor :) Assembyli bir çok insan bilmiyor ve normal bir programlama dili olarak gösteriliyor. Assembly normal bir dil değil asm piyasada sadece profesyonel anlamda yapılan işlerde kullanılır. bunu adama söylemek durumundayım, asm yi kolay gösteren adama karşı da tavrımı alırım tabii. vb ile asm nin kategorileri farklı. vb de program yapmak ile asm de program yapmak arasında çok fark var. rahatlık farkı, syntax farkı, derleyici farkı v.s. vs.. bunlar asmyi bu konuda geri düşürür. bir test de yapabiliriz. basit bir exe yazın, kodlarına bakın.sonra bir disammbler programıyla yada hiew tarzı bir programla asm kodlarına bakın.Bakın bakalım kaç satır var meydanda :)
Biraz bilmek tehlikelidir. Ya derinliklerden iç ya da bilgeliğin tadını tatmaya kalkma! Çünkü sığ sular beyni zehirler, bol sular insanı temizler....-------------------pompey-------- legion_of_doom, 24 Kasim 2009 (Sali) 13:04 tarihinde Türkiye AB'ye girene kadar uzaklaştırıldı.
Uzaklaştırılma Sebebi: 3.Seferdir forumda trojan paylaşmaya calışıyor...
|
|