Tulisan Dasar Cracking
Selamat Datang................. Cracker..........
Bahasa Assembler :

Pengantar
Apa sih Bahasa Assembler itu ?

Bahasa Assembler adalah bahasa pemprograman tingkat rendah. Sebelumnya kamu harus mengerti tentang struktur komputer sehingga akan mempermudah memahami bahasa assembler. Struktur sederhana sebuah komputer seperti dibawah ini:


System bus (warna kuning) menghubungkan semua komponen dikomputer.
CPU adalah pusat dari semua perintah dijalankan oleh sebuah komputer.
RAM adalah tempat penyimpanan sementara sebuah program pada waktu dijalankan

Didalam CPU



REGISTER SECARA UMUM

8086 CPU mempunyai 8 register secara umum, yang bernama:
  • AX- Himpunan register ( dibagi menjadi < B>Ah / AL).
  • BX- alamat base register ( dibagi menjadi < B>Bh / BL).
  • CX- register acuan ( dibagi menjadi < B>Ch / CL).
  • DX- data register ( dibagi menjadi < B>Dh / DL).
  • SI- index sumber register.
  • DI- index tujuan register.
  • BP- base pointer.
  • SP- stack pointer.

Despite adalah nama sebuah register, yang menentukan pemakaian untuk masing-masing tujuan register. Tujuan utama suatu register adalah menyimpan variable. Ukurannya adalah 16 bit, seperti: 0011000000111001B (format biner), atau 12345 sistim desimal.

4 tujuan umum register (AX, BX, CX, DX) dibuat dari dua regiter 8 bit yang terpisah, sebagai contoh jika AX= 00110000 00111001b, kemudian AH=00110000b dan AL=00111001b. Oleh karena itu, ketika kamu memodifikasi register 8 bit yang lain harus merubahnya dan dibaharui, atau sebaliknya. Kesamaan untuk 3 register adalah "H" adalah untuk tinggi dan "L" adalah untuk bagian rendah.

Dikarenakan register terletak di dalam CPU, mereka lebih cepat dibanding memori. Mengakses suatu lokasi memori memerlukan penggunaan suatu sistem bus, maka memperlambat pengaksesan. Mengakses data didalam register pada umumnya tidak banyak mengambil waktu. Oleh karena itu, kamu perlu mencoba untuk menyimpan variabel didalam register. Ukuran register sangat kecil dan kebanyakan register mempunyai tujuan khusus yang membatasi penggunaan mereka sebagai variabel, tetapi mereka masih suatu tempat sempurna untuk menyimpan data kalkulasi sementara.

segment REGISTER

  • CS- menunjuk di segment yang berisi program yang berjalan.
  • DS- biasanya menunjuk pada bagian dimana variabel yang dituju.
  • ES- segment ekstra register, menunjuk pada kodenya pemakaian.
  • SS- menunjuk di segment yang berisi stack.
Walaupun mungkin untuk menyimpan data lain didalam segment register, tapi sebenarnya sangat buruk. Segment register mempunyai suatu tujuan khusus - mengarahkan ke blok memori yang dapat diakses.

SEGMENT register bekerja sama dengan register umum untuk mengakses nilai memori. Sebagai contoh jika kita bermaksud mengakses memori di alamat 12345H (hexadecimal), kita perlu menetapkan Ds= 1230h dan Si= 0045h. Ini adalah yang baik, sebab lewat dari sini kita dapat mengakses banyak lebih memori dibanding dengan satu register yang dibatasi hingga 16 bit.
CPU membuat suatu kalkulasi alamat phisik dengan perkalian segment register dengan 10h dan menambahkan ke register umum (1230H* 10h+ 45h= 12345h):


alamat dibentuk dengan 2 register disebut suatu Effective address.
Biasanya Bx, SI dan DI register bekerja dengan Ds segment register;
BP dan Sp bekerja dengan SS segment register.
Register umum lainnya tidak bisa membentuk Effective address!
Walaupun Bx dapat membentuk Effective address, Bh dan Bl tidak bisa!

REGISTER UMUM
  • IP - penunjuk instruksi.
  • Flag Register - menentukan status dari prosessor.

IP register selalu bekerja sama dengan Cs segmen register dan itu menunjuk pada instruksi yang sedang dijalankan.
Flags Register diperbaharui secara otomatis oleh CPU setelah perhitungan operasi matematikal, ini mengijinkan untuk menentukan jenis dari hasilnya, dan untuk menentukan kondisi-kondisi untuk memindahkan kendali ke bagian lain.
Jadi kamu tidak bisa mengakses register secara langsung.

WebMaster
Terus      Kembali
Komentar dan Mailing List
Crack One Software Every Day Make You The Real Cracker