*

Tuesday, June 12, 2012

Belajar Basic Assembler CE

Sebagian orang berpikir kalo Assembler itu sulit. Padahal mudah banget. cuma butuh kesabaran dan logika ajah

Okey kita tau kalo Processor bekerja sama dengan memory dan Register. Beberapa register ada yang mudah di terjemahkan ada juga yang sulit untuk di pelajari
Contoh Register :



1. EAX,
2. EBX,
3. ECX,
4. EDX,
5. ESP,
6. EBP,
7. ESI,
8. EDI,
9. Dan beberapa lagi yang lainnya

Contoh:
1. sub ebx,eax (ebx=00000005,eax=00000002)
Contoh ini adalah contoh Dasar dari Sebuah register memory.
opcode param1,param2

Opcode adalah instruksi pemberitahu prosesor untuk apa yang harus dia dilakukan, dalam hal ini penurunan nilai disimpan dalam register ebx dengan nilai yang tersimpan dalam register eax.
Dalam kasus ini ebx = 5 dan eax ebx = 2
Juga dicatat bahwa Anda melihat opcode dengan 2 parameter: Parameter pertama adalah target instruksi. Parameter yang ke2 itu adalah sumber sumber


2. sub [esi 13], ebx (ebx = 00000003, esi = 008AB100) Dalam kasus ini Anda melihat parameter pertama adalah antara tanda kurung. Hal ini menunjukkan bahwa aliham sebuah memorylocation register sedang digunakan. memorylocation ini menunjuk kepada nilai di antara kurung, dalam hal ini esi 13 (Perhatikan bahwa 13 adalah dalam heksadesimal)

Untuk Lebih mendasar lagi coba gunain Calculator
Pake Mode Scientific. Disana ada fungsi Hexadecimal, Decimal, Biner, Octal.

Untuk Biner udah tau kan ?? Biner itu bahasa komputer yang menggunakan Teknologi Transistor. Semua karakter angkanya Hanya didasari oleh angka 1 dan 0 contoh

110 Dalam Biner = Kita jadikan ke Hexadecimal Dengan Radiks 2³
Contoh : 1 x 2^2 + 1 x 2^1 + 0 x 2^0 = 4 + 2 + 0 = 6
Kalo ga percaya silahkan di Coba dengan Calculator.

Lanjut deh, ESI = 008AB100 disini dapat dilihat alamat yang menunjuk adalah 008AB113. Instruksi ini akan menurunkan nilai tersimpan di 008AB113 lokasi dengan nilai yang tersimpan dalam ebx (yang 3).

Jika nilai pada lokasi 008AB113 adalah 100 maka nilai yang disimpan di 008AB113 ini akan 97.

Okey Mari kita lihat di MOV, salah satu instruksi yang paling sering digunakan meskipun itu sugests nama yang bergerak data, ia hanyalah sebuah COPYs data dari satu tempat ke tempat lain.
MOV bekerja sama sebagai sub. Parameter pertama adalah tujuan, dan parameter kedua sebagai sumber.
contoh: MOV eax, eax ebx = 5, ebx = 12 Salinan nilai disimpan dalam ebx ke eax
Jadi, jika instruksi ini akan dijalankan akan eax 12. (Dan ebx akan tinggal 12)
Mov digunakan PointBlank untuk Nilai sebuah Granat.
Back to top

3 komentar:

Loading