0% menganggap dokumen ini bermanfaat (0 suara)
17 tayangan10 halaman

Panduan Debugging dengan DEBUG.EXE

Untuk menjalankan utility DEBUG, anda cukup mengetik DEBUG dari prompt. Sedang bila ingin membuka sebuah file langsung untuk dioperasikan DEBUG, anda cukup menambahkan nama file itu sebagai command tail. Contohnya :

Diunggah oleh

Nur Hakim
Hak Cipta
© All Rights Reserved
Kami menangani hak cipta konten dengan serius. Jika Anda merasa konten ini milik Anda, ajukan klaim di sini.
Format Tersedia
Unduh sebagai DOCX, PDF, TXT atau baca online di Scribd
0% menganggap dokumen ini bermanfaat (0 suara)
17 tayangan10 halaman

Panduan Debugging dengan DEBUG.EXE

Untuk menjalankan utility DEBUG, anda cukup mengetik DEBUG dari prompt. Sedang bila ingin membuka sebuah file langsung untuk dioperasikan DEBUG, anda cukup menambahkan nama file itu sebagai command tail. Contohnya :

Diunggah oleh

Nur Hakim
Hak Cipta
© All Rights Reserved
Kami menangani hak cipta konten dengan serius. Jika Anda merasa konten ini milik Anda, ajukan klaim di sini.
Format Tersedia
Unduh sebagai DOCX, PDF, TXT atau baca online di Scribd

DEBUG.

EXE

Untuk menjalankan utility DEBUG, anda cukup mengetik DEBUG dari prompt. Sedang bila
ingin membuka sebuah file langsung untuk dioperasikan DEBUG, anda cukup menambahkan
nama file itu sebagai command tail. Contohnya :

A> DEBUG [Link]

1. Perintah Debug

a. Q (Quit)

Bila anda mengetikan huruf Q dan menekan enter, maka akan segera kembali ke dos prompt.

b. H (Hexa)

Perintah Hexa adalah perintah yang melaksanakan penjumlahan dan pengurangan terhadap
dua bilangan Hexa. Bentuk umum instruksi adalah H operand1,operand2

c. R (Register)

Perintah R digunakan untuk mengetahui isi masing-masing register pada saat mengetik R dan
menekan enter

d. A (Assembler)

Perintah Assembler berguna untuk tempat menulis program Assembler.

-A100

0FD8:100

e. N (Name)

Perintah ini digunakan untuk memberi nama suatu program assembler

f. RCX (Register CX)

Perintah ini digunakan untuk mengetahui dan memperbaruhi isi register CX yang merupakan
tempat penampungan panjang program yang sedan aktif

g. RIP (Register IP)


Perintah ini digunakan untuk memberitahu komputer untuk memulai memproses program
dari titik tertentu.

h. W (Write)

Perintah ini digunakan untuk menulis/ menyimpan program

i. G (Go)

Perintah ini digunakan untuk menjalankan suatu program

j. T (Trace)

Perintah ini digunakan untuk memproses sebaris program saja.

k. U (Unassemble)

Perintah ini digunakan untuk melihat listing program yang sedang aktif.

2. Perintah Dasar Assembler

a. MOV

Perintah MOV adalah perintah untuk mengisi, memindahkan, memperbaruhi isi suatu
register, variable ataupun lokasi memory

Adapun tata penulisan perintah MOV adalah :

MOV [operand A], [Operand B]

Contoh :

MOV AH,02

Operand A adalah Register AH

Operand B adalah bilangan 02

Hal yang dilakukan oleh komputer untuk perintah diatas adalah memasukan 02 ke register
AH.

b. INT (Interrupt)
Bila anda pernah belajar BASIC, maka pasti anda tidak asing lagi dengan perintah GOSUB.
Perintah INT juga mempunyai cara kerja yang sama dengan GOSUB, hanya saja subroutine
yang dipanggil telah disediakan oleh memory komputer yang terdiri 2 jenis yaitu :

- Bios Interrupt ( interput yang disediakan oleh BIOS (INT 0 – INT 1F))

- Dos Interrupt ( Interrupt yang disediakan oleh DOS (INT 1F – keatas))

Melakukan percobaan-percobaan yang ada didebug seperti Unassemble(lihat kode program),


Dump(melihat data byte), Enter(merubah isi memory), Assembly(membuat program), dll.

Program sederhana

a-100

1074:0100 mov cx, 05

1074:0103 mov bh, 41

1074:0105 mov ah, 02

1074:0107 mov dl, bh

1074:0109 int 21

1074:010B inc bh

1074:010D loop 107

1074:010F int 20

Dari program sederhana diatas lakukan proses pendebugan(tracing) atas program tersebut
sekaligus diperhatikan keadaan register dan rutin pada saat itu.

Melakukan proses trace

-T
AX=0000 BX=0000 CX=0005 DX=0000 SP=FFEE BP=0000 SI=0000 DI=0000

DS=1074 ES=1074 CS=1074 IP=0103 NV UP EI PL NZ NA PO NC

1074:0103 B741 MOV BH,4

Program sederhana

Contohnya :

C:\>debug

-a100

1074:0100 MOV AH,02

1074:0102 MOV DL,41

1074:0104 INT 21

1074:0106 INT 20

1074:0108

Untuk melihat hasilnya gunaakan statement : -G

1074:0108
-g

Program terminate normally

Program sederhana menampilkan A

Membuat program looping sederhana seperti dibawah ini, untuk mencetak ABCDEF dengan
mengggunakan [Link]

Contoh :

C:\>debug

-a100

1074:0100 MOV CX,6

1074:0103 MOV AH,02

1074:0105 MOV DL,41

1074:0107 INT 21h

1074:0109 INC DL

1074:010B LOOP 107

1074:010D INT 20h

Hasil runingnya :
-g

ABCDEF

Program terminated normally

Program sederhana menampilkan ABCED

Program sederhana menampilkan abcdef

Penjelasan :

Penggalan program diatas menggunakan registrer Cx untuk melakukan counter perhitungan


mundur sebanyak 6 kali, untuk menampilkan huruf capital A lerlebih dahulu deberikan nilai
hexsadesimal 41 pada pegister DI. Agar supaya karakter selanjutnya adalah B lakukan
penambahan pada register DI ( gunakan statement inc ). Agar proses diatas berulang
sebanyak 6 kali, gunakan statement LOOP dengan menunjukan offset 107.
[Link]

Pertama, bukalah aplikasi command prompt, ini bisa dilakukan dengan berbagai cara:

- klik start menu>all programs>accesories>command prompt.

- ketik "cmd" pada kolom search di start menu kemudian tekan enter.

- tekan tombol Windows+R di keyboard, kemudian ketikkan "cmd" lalu enter.

Untuk menjalankan program assembly kita harus memasuki folder assembly menggunakan
command prompt. Beberapa fungsi perintah di command prompt antara lain:

"cd [nama folder]" masuk kedalam direktori.

"cd.." keluar dari direktori

"dir" menampilkan isi direktori.

"C:" atau "D:" memasuki direktori system C: atau D:

"cls" membersihkan layar command prompt.

masuki folder tempat file assembly tadi berada. misalnya file assembly berada di dalam
folder "C:\Users\dummy\Desktop\TASM\", maka langkah yang harus dilakukan adalah
seperti di gambar dibawah ini

lalu ketikkan “notepad [Link]”, dengan begitu maka akan terbuka sebuah window notepad
yang bernama “[Link]” yang siap ditulisi program
Disinilah kita akan membuat program assembly. untuk mencetak karakter, buatlah teks
seperti di bawah ini:

Adapun fungsi dari perintah-perintah diatas adalah:

.model small

Tanda directive ini digunakan untuk memberitahukan kepada assembler bentuk memory yang
digunakan oleh program kita.

.code

Tanda directive ini digunakan untuk memberitahukan kepada assembler bahwa kita akan
mulai menggunakan Code Segment-nya disini. Code segment ini digunakan untuk
menyimpan program yang nantinya akan dijalankan.

org 100h

Perintah ini digunakan untuk memberitahukan assembler supaya program pada saat
dijalankan(diload ke memory) ditaruh mulai pada offset ke 100h(256) byte.
proses:

Mulai proses assembly.

MOV AH,02h

Nilai servis ntuk mencetak karakter.

MOV DL,'A'

DL = Karakter ASCII yang akan dicetak. Untuk mencetak karakter lain, huruf A dalam tanda
petik bisa diubah menjadi karakter lain, tapi tidak boleh lebih dari satu karakter.

INT 21h

Berfungsi untuk mencetak dan menampilkan karakter di layar.

INT 20h

Interupsi 20h berfungsi untuk mengakhiri program dan menyerahkan kendali sepenuhnya
kepada Dos.

END PROSES

Mengakhiri proses assembly.

Klik menu file dan kemudian save dengan nama apa saja tapi dengan tambahkan akhiran
.asm. File saya akan saya beri nama "[Link]". lalu kembali ke command prompt dengan
meng-klik menu file>exit.
Kemudian, compile-lah dengan menggunakan [Link] dengan perintah di command
prompt:

"TASM tes"

Jika anda telah melakukan hal diatas dengan benar, maka anda akan mendapatkan tulisan
seperti ini

Sampai disini sudah dihasilkan suatu file object dari [Link] yang siap dijadikan file COM
dan EXE. Untuk itu lakukanlah langkah kedua, dengan perintah :

"TLINK tes" kemudian perintah "TLINK/t tes"

Jika anda telah melakukan semuanya dengan benar, maka file telah berhasil diubah menjadi
file exe. Untuk mencetak karakter yang telah dibuat, tulis nama file assembly anda dan tekan
enter, maka command prompt akan menampilkan karakter yang telah anda buat.

Selamat! Anda telah berhasil mencetak karakter menggunakan program assembly

Anda mungkin juga menyukai