Perintah - perintah yang ada pada Assembly (bahasa rakitan/mesin) - hello codingjenius, pada artikel kali ini, saya akan membagikan perintah - perintah coding yang ada pada bahasa assembly, dan bisa anda kerjakan dengan melakukan perintah debug langsung melalui CMD.
kita ketahui dulu apa itu debug, debug digunakan untuk melacak atau mencari kesalahan, debug mempunyai ekstensi *.com, debug adalah sebuah program yang digunakan untuk melihat, mengedit dan menyimpan data ke dalam memori atau sebuah disk.
1. debug hanya mengenal dan selalu bekerja dengan bilangan - bilangan hexadecimal, jadi anda perlu menconversi untuk melakukan proses - proses aritmatika dan juga harus mengetahui bilangan - bilangan hexa - desimal maupun sebaliknya.
2. debug bekerja dengan penunjuk ke segment-segment memori menggunakan format segment dan offset.
3. debug merupakan saran perangkat lunak yang mampu menjelajah ke daerah - daerah perangkat yang paling dalam atau disebut very low level access.
perintah - perintah (commands) dalam debug :
1. A (assemle / Address).
fungsi : memulai pembuatan program assembly dengan debug
syntax : A<offset>
Offset meruapkan segment pembuatan memori tempat pengetikan program dimulai, biasanya pada offset 100h, perbedaan antar TASM dan Debug berikut ini.
TASM
|
DEBUG
|
COMMENTS
|
MOV AX,1234
|
MOV AX,1234
|
Place 1234 into AX
|
MOV AX,L1234
|
MOV AX,[1234]
|
Contents of add. 1234 to AX
|
MOV AX,CS:1234
|
CS:MOV AX,[1234]
|
Move From Offset of CS
|
MOV Byte ptr …
|
Movesb
|
Move Byte string
|
Move Word ptr …
|
Movsw
|
Move word string
|
ret
|
Ret
|
Near return
|
ret
|
Retf
|
Far return
|
contoh penggunaan perintah Asssembler :
-A100
0FD8:0100
ket : teerlihat diseblah kiri huruf A terhadap angkat yang merupakan pernyataan segment dan offset dimana program ditempatkan.
2. C (Compare)
Fungsi : membandingkan isi sebuah blok memori dengan isi blok memori lainnya
Syntax : C
Contoh 1: -C 0100 L10 0200
Berarti memulai offset 0100 sebanyak 16 byte (10 hexa) bandingkan dengan offset 0200.
Hasil yang dimunculkan hanyalah nilai-nilai yang berbeda pada setiap segment. Contoh
2: bandingkan isi antara DS:0100 dengan DS:0200 dengan panjang 8.
3. D (Dump)
Fungsi : menampilkan data yang tersimpan pada segment memori dan offset sebanyak
128 byte.
Syntax : D
Segment, offset: segment memori yang akan ditampilkan datanya
Contoh : -d CS: 80
4. E (Enter/Edit)
Fungsi : Untuk mengisi atau mengubah data yang terdapat pada memori yang ditunjuk
Segment & offset.
Syntax : E
Segment, offset: segment memori yang akan diedit
Contoh : - E 0100
5. F (Fill)
Fungsi : Untuk mengisi lokasi memori.
Beberapa perintah F:
F 0100 L1 41
6. G (GO)
Fungsi : Menjalankan/mengeksekusi program.
Contoh -G 276 47c 528 347
7. H (Hex)
Fungsi : Melaksanakan penjumlahan dan pengurangan terhadap 2 bilangan hexa.
Syntax : H
Contoh : -h 3 4
0007 FFFF
-h 5678 1234
68AC 4444
8. I (Input)
Fungsi : Untuk membaca byte data dari setiap I/O port di dalam computer. Segment port
bisa berupa 1 atau 2 segment byte. Debug akan membaca port dan menampilkan isi
Contoh : -I 3FD
60
9. L (Load)
Fungsi : membaca data yang tersimpan pada disk
Sintaks : L
Segment,offset: Segment memori untuk menampung hasil instruksi load.
No_Disk : 0=A, 1=B, 2=C, dan seterusnya.
No_Sector : nomor sector pada disk yang akan kita baca.
Jlh_Sector : jumlah sector yang akan kita baca
Contoh : L CS:80 3 0 1
Untuk membaca drive D pada sector ke-0 sebanyak 1. Sector akan disimpan di segment
memori CS:80
10. M (move)
Fungsi : memindah atau menyalin data yang ada di suatu lokasi memori ke segment
memori lainnya,
Syntax : M
Contoh : -M D100 K 5F 0150
11. N (Name)
Fungsi : Untuk memberikan nama file pada program com yang telah dibuat dengan
debug, tetapi masih belum disimpan
Syntax : N[drive]:[nama program].COM
Contoh : -n cekdisc.COM/f
12. O (Output)
Perintah ini merupakan kebalikan dari perintah input.
Contoh : -0 5FC 1
13. P (Proceed)
Fungsi : Menjalankan looping, instruksi perulangan string, interrupt software atau
subroutine.
Syntax : p[=address] [number]
14. Q (Quit)
Fungsi : Untuk kembali ke DOS-prompt atau Keluar dari program.
Contoh : -Q
15. R (Register)
Fungsi : Menampilkan informasi komposisi register-register di dalam mikroposesor,
segment memori serta isi dari segment memori tersebut.
Syntax : R atau RCX
Contoh : R atau RAX
16. T (Trace)
Fungsi : Untuk menjalankan baris program assembly selanjutnya yang sedang di debug.
Contoh : - t = 100 5 atau -T
17. U (Unassemble)
Fungsi hamper sama dengan perintah List pada BASIC. Apabila mengetik U maka
terlihat program yang sedang aktif saat itu.
Contoh : -U atau -U 026E atau -U 100 L 0010
18. W (Write)
Fungsi : Menyimpan data ke dalam disk
Syntax : W
19. ?
Fungsi : menampilkan layar help pada beberapa versi dari debug
- Berkomentarlah Dengan Bijak.
- No link, S@ara, P#rn, etc.
- Jadilah Orang Cerdas agar anda Cerdas .wkwkwkw.
EmoticonEmoticon