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