PDA

Tam Sürümünü Görmek İçin : Assembler


sadist_sniper
30/03/2003, 13:55
Bi gün otururken aklımda şimşekler çaktı, vahiy tarzı bişey geldi
ve kendi kendime şu soruyu sorudum. neden assembler öğrenmiyorum???
Aranızda 80x86 assembler ile ilgili bir site bilen var mı acaba?
yada e-book tarzı bişey?

Ayrıca geniş e-book kütüphanesi olan siteleri biliyomusunuz?


ASA
30/03/2003, 16:33
http://www.google.com.tr/search?q=%22asm%22+%22x86%22

Buradan ba$layabilirsin.

:cool:

RaiST
30/03/2003, 16:40
bu sımsekten once dusunmem gereken:
- ben bir sistem programcısımı olmak istiyorum? mesela gidip bir OS mu yazacagim?

muharrem_tac
30/03/2003, 16:52
Çok özür dileyerek küçük bir düzeltme yapalım:Assembler dil değil.Derleyici.Dilin adı:Assembly.

Assembly üzerine bildiğim çok güzel bir kitap var.Hocamız Sayın Nurettin TOPALOĞLU'nun "x86 TABANLI MİKROİŞLEMCİ MİMARİSİ VE ASSEMBLY DİLİ".Ne yazık ki e-kitap değil.

Kitap hakkında ayrıntılı bilgi:
http://www.muharremtac.com/default.asp?konuno=15

mustafa
30/03/2003, 17:52
assembley ile bir kaç gün ilgilendim de, intibaım şu oldu: eğer elektronik cihazlar için entegre devrelere işlenmek üzere, ya da bilgisayara işletim sistemi olmak üzere kodlamayla işiniz yoksa, assembly yerine C/C++ kullanmak çok daha mantıklı. daha iyi bilenler, işin doğrusunu söylerler...

muharrem_tac
30/03/2003, 17:59
@mustafa
Haklısınız fakat az da olsa assembly ile ilgilenmek bilgisayarın içinde nelerin olup bittiğine dair fikir vermesi bakımından faydalı olur diye düşünuyorum.

MEHMET
20/06/2003, 09:18
Assembly programlama dili zor bir olmakla berber mikroişlemcinin yapısını iyi derecede bilmek gerekir.
Assembly programlama dili ile EXE uzantılı dosyaları bile düzenleyebilirsiniz. Ve assembly ile yapılan dosyaların ebatı çok küçüktür. mesala vbasic yada C'de yapmış olduğunuz çok fonksiyonlu bir hesap programının kapladığı alan 100 kilobayttan aşağı olmazken(ki bunu yapan kişide çok profosyonel olan biri herhalde) assemblyde aynı programın kaplayacağı alan en fazla 800 bayttır.
Tabi dediğim gibi zor bir programlamadır. ve Karmaşıktır. C, Java, delphi , basic gibi dillerde rahat rahat tanımlamak istediğimiz değişkenleri assemblyde tanımlayamıyoruz. yani assembly bu konudada çok cimri bir dildir. kullanacağınız değişkenleride assembly tanımlar.
yani çooook zor bir dil.

MEHMET
20/06/2003, 09:21
ayrıca günümüzdeki en iyi bilgisayar virüs yazılımcıları assembly uzmanıdır. bunun sebebi assembly ile donanıma hükmetmek gibi bir şansa sahip olabilirsiniz. yani assemblyde yaptığınız bir programla anakartınıza yada başka bir donanımınıza fazla güç göndererek yanmasına sebep olabilirsiniz. grçi donanımları üreten firmalar bunu tamamen olmasada engellemyi başardılar ama assemblyde çok uzman olan biri bunu rahatlıkla aşabilir.
ayrıcaaaa hack yapmak isteyen yada virüs veya trojen yazmak isteyen arkadaşlar için en uygun olan dillerden biridir assembly dili.
portların hepsini rahat rahat kullanmanızı sağlar.

MEHMET
20/06/2003, 09:49
Orjinal mesajı gönderen sadist_sniper

Aranızda 80x86 assembler ile ilgili bir site bilen var mı acaba?


Bu arada aldığımı bir duyuma göre X86 tabana artık yol gözüküyormuş. yani boşuboşuna kendinizi kasmayın diyorum.
yani tabanlı daha esnek olur X86 larda tarihe gömülür. gerçi yeni tabana geçmek bir devrim olacak ama devrim alıştık değil mi?

Neyse size assembly de BIOS'a kolay kolay reset atabileceğiniz küçük bir programcık yazmak istiyorum:

1. Öncelikle dos ortamına geçilip "DEBUG" yazılıp assembly editörü (belki editör demem yanlış ama başka isim bulamadım)açılır.
2. Başlamak için "-A100" yazıp enter'lemelisiniz.
3. Daha sonra

Mov al,2E
Out 70,al
İn al,71
İnc al
İnt 20h

yazmalısınız.

4. En son olarakta "G100" yazıp entere basınız.

eğer programcığı doğru yazdıysanız, bilgisayarı açıp kapattıktan sonra BIOS şifresi, saat gibi fonksiyonların sıfırlandığını göreceksinizdir.

kaynak: http://www.hacker-toolz.info/page/tutorials/Hacken/Lession1_20/lesson08.htm


6

ee++
20/06/2003, 10:08
x86 nereye gidecek yav.. Intel her gun yeni islemci cikariyor.. Dunyadaki mevcut uygulamalarin %75'i x86 tabanlıdır herhalde..

acemi
20/06/2003, 10:28
Benden de bir ornek program. BIOS password'unu silmek icin (her BIOS'da calismaz)

Command prompt'ta debug yazdiktan sonra sirasiyla:

o 70 2E
o 71 FF
q


Bu arada "ne yeni tabani yahu" diye de ekliyorum.

acemi
20/06/2003, 10:34
Tabii benimki calisani :)
sessiztetik'inki ise calismayani cunku buyuk i kullanmis :)

MEHMET
20/06/2003, 13:13
Orjinal mesajı gönderen acemi
Tabii benimki calisani :)
sessiztetik'inki ise calismayani cunku buyuk i kullanmis :)

:)

MEHMET
20/06/2003, 13:17
Orjinal mesajı gönderen ee++
x86 nereye gidecek yav.. Intel her gun yeni islemci cikariyor.. Dunyadaki mevcut uygulamalarin %75'i x86 tabanlıdır herhalde..

Makalenin birinde okumuştum. Teknolojide herşey mümkün arkadaşlar. adamlar öyle bir çıkarırlar ki X86 da çalışan programları kurtarabilirler(öyle düşünüyorum(yanlış düşünüyorda olabilirim.))
Okuduğum makaleyi bulabilirsem yayımlamak isterim.

acemi
20/06/2003, 14:40
x86'da calisan programlari kurtarmalari (yani geriye dogru uyumlu olmasi) demek, bugun kullanilan assembly komutlarini gecerliligini koruyacagi anlamina geliyor. Intel de hicbir zaman geriye uyumluluktan vazgecmez.


Bu arada "x86 da ne diyenler" icin ek bilgi: Eskiden Intel islemcilerini 8086, 80186, 80286, 80386, 80486 seklinde isimlendiriyordu. 80586'ya gecilince yeni islemciye Pentium adi verildi. Pazarlamacilar boylesinin daha uygun olacagini soylemisler.

x86 ile kasdedilen, Intel ve Intel uyumlu islemciler oluyor.

ee++
20/06/2003, 15:03
Pazarlamacılar öylesinin daha uygun olacağını söylediği için değil, AMD vb firmalar artık Intel islemcilerinin aynısını üretmesin diye x86 isimlendirmesinden vazgeçildi. ABD'deki patent kanunlarına göre x86 gibi model numarası şeklinde isim yaparsaniz bu standart olarak kabul ediliyor, ve herhangi bir firma bu standardın gerçekleştirimini yapabiliyor. Pentium, Itanium gibi isimler bu nedenle geldi.

Ayrica Intel'in her islemcisi x86 serisine ait degildir. Ornegin Itanium'un x86 ile uzaktan yakından alakası yok.

acemi
20/06/2003, 16:30
Bu dedigin zaten pazarlama ile ilgili bir karar.

ee++
20/06/2003, 23:56
Tamam, sen haklı ol.

acemi
21/06/2003, 00:03
Itanium konusunda da sen haklisin :)

ee++
21/06/2003, 00:07
Ben diğer konuda da haklıyım ;)

MEHMET
24/06/2003, 16:59
Itanium ayrı bir işlemci mimarisine mi sahip?
Intel neden Itanium'u çıkartma gereği duydu?
yoksa yavaş yavaş taban değiştirmeye mi başladı...
nedir bu itanium işlemciler?

ee++
24/06/2003, 19:50
64'lik yeni bir mimari.

acemi
24/06/2003, 20:28
Intel neden Itanium'u çıkartma gereği duydu?

Bunlar, gelismis mimarisi sayesinde daha cok isi, daha kisa zamanda yapabilen islemciler.

MEHMET
25/06/2003, 08:46
peki Itanium işlemcileri yeni bir tabana geçiş olarak kabul edebilir miyiz?

acemi
25/06/2003, 09:34
Bundan kastin geriye uyumlulugun olup olmayacagi mi? Yani 32 bit Intel islemciler icin yazilan kodlarin, Itanium'da calisip calismayacagi mi?

Intel 16 bit islemcilerden, 32 bit islemcilere gectiginde de mimari buyuk oranda degismisti ama bunu kullanicilar farketmedi. Geriye uyumluluk sayesinde eski kodlar, yeni islemcilerde de calisti.

acemi
25/06/2003, 09:36
Bu arada merak ettim, forumdakilerin kullandigi en eski Intel islemci hangisi? Yoksa herkes Pentium sonrasi kusak mi :)

Mingitau
25/06/2003, 10:49
Ben intel islemci kullandigimi hatirlamiyorum pentium oncesi ama bir ara C64 bilgim olmustu. okula baslamadan once klavye ile yazmayı ogrenip abimden edindigim bilgilerle Adını gir : Selam Şu diyen programlar hazırlıyodum :p