Program dibawah ini berfungsi untuk menampilkan / mencetak 10 buah karakter dengan menggunakan int 21h servis 02.
Listing Programnya adalah sebagai berikut :
.MODEL SMALL
.CODE
ORG 100h
Proses:
MOV AH,02h
MOV DL, 'A'
MOV CX,0fh
Ulangi:
INT 21h
INC DL
LOOP Ulangi
INT 20h
END Proses
Analisa Program :
- Elemen-elemen Intruksi
- Format Intruksi
- Jenis-jenis Intruksi
Mnemonic:
MOV : digunakan untuk mencopy nilai atau angka menuju suatu register, varibel atau memory
INT : digunakan untuk menghasilkan interupsi
INC : digunakan khusus untuk pertambahan 1
LOOP : digunakan untuk melakukan suatu proses yang berulang ulang
END : digunakan untuk mengakhiri suatu program - Alamat Yang Digunakan
a. Register AH
b. Register DL
c. Register CX - Penjelasan Program
- .MODEL SMALL berfungsi sebagai pemberitahu kepada assembler atau penterjemah bentuk memori yang digunakan.
- .CODE berfungsi sebagai pemberitahu kepada assembler bahwa kita akan mulai menggunakan code segment-nya disini.
- ORG 100h berfungsi sebagai pemberitahu bahwa pada saat program dijalankan diletakkan mulai pada offset ke 100h.
- MOV AH,02h adalah sebuah service dari interupsi 21h yang berfungsi untuk menampilkan karakter pada layar
- MOV DL,'A' maksudnya adalah kita meletakkan karakter 'A' pada register DL
- MOV CX,0ah maksudnya adalah untuk melakukan perulangan (looping) sebanyak 0ah (10 kali)
- INT 21h berfungsi sebagai interupsi untuk menampilkan karakter ke layar
- INC DL berfungsi sebagai karakter yang kita simpan pada register DL tadi akan ditambah 1, dan seterusnya ditambah 1 sampai batas perulangan (looping) yaitu 10 kali. Pada listing diatas karaktek yang pertama dicetak adalah 'A', dan kemudian dilanjutkan increment (INC) 1 lalu dicetak B, begitu seterusnya sampai berakhir dengan karkter 'J'.
- LOOP berfungsi untuk mengulangi kembali ke blok ulangi lalu cetak lagi.
- INT 20h Kembali ke DOS
- END Proses berfungsi untuk mengakhiri program
Output program akan menampilkan karakter ABCDEFGHIJ