Assembly Veri Tanımlamaları

Bugs Bunny

Uzman üye
29 Tem 2016
1,487
35
MSFVenom
Herkese merhaba TurkHackTeam üyeleri,

Ben Bugs Bunny


giphy.gif


X86 Assembly Veri Tanımlamaları

Assembly nedir?

Assembly diğer programlama dillerine göre daha zor ve yazması daha uzundur. Ancak diğer dillere göre birden çok üstünlüğü bulunmaktadır. Bu dili kullanırken kullanılan makinenin donanımsal özelliklerinin iyi bir şekilde bilinmesi gerekmektedir.

Başlatılan veriler için Veri tanımlama:

DB (Define Byte) = 1 byte veri tanımlar.
DW (Define Word) = 2 byte veri tanımlar.
DD (Define Doubleword) = 4 byte veri tanımlar.
DF (Define Far Word): 6 byte veri tanımlar.
DQ (Define Quadword) = 8 byte veri tanımlar.
DT (Define Tenbyte) = 10 byte veri tanımlar.
DUP = Duplicate


Başlatılmamış veriler için Veri tanımlama:

RESB(Reserve a Byte) = 1 byte yer ayırır.
RESW(Reserve a Word) = 2 byte yer ayırır.
RESD(Reserve a Doubleword) = 4 byte yer ayırır.
RESQ(Reserve a Quadword) = 8 byte yer ayırır.
REST(Reserve a Ten bytes) = 10 byte yer ayırır.

Kod:
section .text
 global _start          
	
_start:                   ; giriş noktası
   mov	edx,5		  ; mesaj uzunluğu
   mov	ecx,choice        ; yazılacak mesaj
   mov	ebx,1		  ; dosya tanımlayacısı
   mov	eax,4		  ; sistem çağrı numarası (sys_write)
   int	0x80		  ; çağrı çekirdeği

   mov	eax,1		  ; sistem çağrı numarası (sys_exit)
   int	0x80		  ; çağrı çekirdeği

section .data
choice DW 'bunny'

Bu kodu çalıştırdığımızda bize çıktı olarak bunny yazısını verecektir.

5tKAL6.png


Burada bulunan değişkeni db olarak tanımlarsak hafızada 1 byte değer ayırır.
dw olarak tanımlarsak 2 byte değer ayırır.

O05vW2.png


Burada mov ile x’e deneme1 değişken değerini atadı.

s0iBNT.png



db ile 8bitlik bir veri tanımladık ancak 16 bitlik bir ax registerin’de yazmaya çalışırsak hata verecektir. 16 bit registerın neresine yazayım bu 8 biti ben diyor. Bu hatayı düzeltmek için ise;

4tKWfc.png


Word ptr kullanabiliriz. Word ptr sayesinde tamam 16 bitsen 8 biti al kendi içinde yer alan 8 bitlik registera aktar diyoruz.

word ptr detaylı bilgi: [ame]https://www.youtube.com/watch?v=owCyceN3ALk[/ame]



Bu konumunda burda sonuna gelmiş bulunmaktayım.

Bugs Bunny iyi günler diler.

oKEKz1.gif
 
Son düzenleme:

AXPA

Kıdemli Üye
13 Ocak 2018
2,340
150
New World
Merhaba,

Assembly her zaman ilgi duyduğum bir yazılım dilidir.

Diğer adıyla "Makine Dili"
 

Starzz

Üye
21 Haz 2015
237
58
Peki neden Assembly'i neden kullanalım ? Hangi sektörde ve ne işimize yarar beni aydınlatırsanız sevinirim.
 

xmajestar

Katılımcı Üye
13 Ocak 2021
624
105
tzdata-TR
eline sağlık bu pubg mobilede bunlarla yazılıo bi kaç telefona uyumlu sürümü hex kodları ile araplar oynuyo aim hack die satıyorlar gerçekten bu 8 16 bit vb kodlamalar aşırı kafa karıştırıcı okudum bi tık aydınlandım
 
Üst

Turkhackteam.org internet sitesi 5651 sayılı kanun’un 2. maddesinin 1. fıkrasının m) bendi ile aynı kanunun 5. maddesi kapsamında "Yer Sağlayıcı" konumundadır. İçerikler ön onay olmaksızın tamamen kullanıcılar tarafından oluşturulmaktadır. Turkhackteam.org; Yer sağlayıcı olarak, kullanıcılar tarafından oluşturulan içeriği ya da hukuka aykırı paylaşımı kontrol etmekle ya da araştırmakla yükümlü değildir. Türkhackteam saldırı timleri Türk sitelerine hiçbir zararlı faaliyette bulunmaz. Türkhackteam üyelerinin yaptığı bireysel hack faaliyetlerinden Türkhackteam sorumlu değildir. Sitelerinize Türkhackteam ismi kullanılarak hack faaliyetinde bulunulursa, site-sunucu erişim loglarından bu faaliyeti gerçekleştiren ip adresini tespit edip diğer kanıtlarla birlikte savcılığa suç duyurusunda bulununuz.