Sebenarnya, postingan kali ini mirip dengan postingan saya yang lain yaitu Mencetak Karakter Bag.4
Hasilnya akan seperti gambar di samping.
Bagaimana cara mencetak karakter
(dalam bahasa assembly) alfabet a-c-e-g-i-k-m-o... dan seterusnya dengan menghilangkan urutan genap pada
alfabet?
1. Buka dosbox tasm yang
sudah di instal. Ketik edit lalu tekan enter, maka akan muncul layar biru. Pada
layar biru yang kosong ketiklah
.MODEL SMALL ------------------------------------------- baris
ke 1
. CODE ------------------------------------------- baris
ke 2
ORG 100h ------------------------------------------- baris
ke 3
PROSES: ------------------------------------------- baris
ke 4
MOV AH,9h ------------------------------------------ baris
ke 5
MOV BL,16h ------------------------------------------ baris
ke 6
MOV CX,13 ------------------------------------------ baris
ke 7
ULANG: ------------------------------------------ baris
ke 8
INT 10h ------------------------------------------ baris
ke 9
INC BL ------------------------------------------ baris
ke 10
LOOP ULANG ------------------------------------------ baris
ke 11
---------------------------------------------------------- baris
ke 12
MOV
AH,2h ------------------------------------------ baris
ke 13
MOV
DL,’A’ ------------------------------------------ baris
ke 14
MOV
CX,13 ------------------------------------------ baris
ke 15
LAGI: ------------------------------------------ baris
ke 16
INT
21H ------------------------------------------ baris
ke 17
ADD
DL,2 ------------------------------------------ baris
ke 18
LOOP
LAGI ------------------------------------------ baris
ke 19
----------------------------------------------------------- baris
ke 20
INT 20H ------------------------------------------ baris
ke 21
END PROSES ------------------------------------------ baris
ke 22
Baris Ke 1 : Bentuk memori yang digunakan
kurang dari 1 segmen atau 64KB
Baris Ke 2 : Menyimpan program yang
akan dijalankan
Baris Ke 3 : Kode 100h berarti kita
menyediakan 100byte kosong saat menjalankan program untuk mengontrol jalannya
program
Baris Ke 4 : Label Untuk Memulai
Baris Ke 5 : MOV AH, Nilai service,
untuk mencetak dengan atribut warna adalah 9h
Baris Ke 6: MOV BL, Warna atau
atribut dari karakter, kode 16 bisa diganti-ganti
Baris Ke 7: Banyaknya pengulangan
karakter yang akan muncul
Baris Ke 8 : ULANG
Baris Ke 9 : INT 10h, cetak atribut
warna
Baris Ke 10 : INC BL, tambahkan BL
dengan 1
Baris Ke 11 : lompat ke ULANG
Baris Ke 12 : enter(boleh di
abaikan, saya membuatnya hanya untuk membatasi kode saja)
Baris Ke 13 : MOV AH, Nilai
service, untuk mencetak karakter kodenya 21h
Baris Ke 14: MOV DL,’A’ perintah
untuk mencetak karakter A
Baris Ke 15 : Banyaknya pengulangan
karakter yang akan muncul
Baris Ke 16 :LAGI
Baris Ke 17 :INT 21h, cetak
karakter
Baris Ke 18 :ADD DL, tambahkan DL
dengan 2
Baris Ke 19 :lompat ke LAGI
Baris Ke 20 :enter(boleh di
abaikan)
Baris Ke 21 :kembali ke DOS
Baris Ke 22: Mengakhiri proses
(saya hanya menscreenshoot tampilan kodenya dalam
bentuk notepad++ saja)
2. Kalo
sudah, simpan filenya dengan klik File> Save
Pada
contoh diatas saya menyimpannya dengan nama TRY.ASM
3. Jika sudah di simpan, maka klik File>exit, maka akan
tampil layar dosbox hitam, ketiklah
C:\TASM>tasm try (enter)
C:\TASM>tlink/t try (enter)
C:\TASM>try
(enter)
Nah, bagaimana jika ingin mencetak terbalik? misalnya Z-X-V-T...
Untuk aynag itu kita tinggal ubah kode ADD DL,2 menjadi SUB DL,2
dan hasilnya akan seperti dibawah
Sekian. Semoga bermanfaat. Oh ya, karena saya masih amatir, saya sangat membutuhkan perbaikan dan saran dari semuanya.
0 komentar:
Posting Komentar