I.
TUJUAN
Untuk mengetahui, memahami, dan
memraktikkan bahasa assembly agar menghasilkan tulisan satu karakter maupun
rangkaian kata. Selain itu dapat mencetak huruf ”A”, huruf ”P”, dan rangkaian
kata nama diri sendiri ”SEKAR RINIA”.
II.
DASAR TEORI
Bahasa assembly dikategorikan
sebagai bahasa tingkat rendah (low level languange). Ini untuk menggambarkan
kekhususannya sebagai bahasa yang berorientasi pada machine dependent. Bahasa
assembly berbeda dengan bahasa mesin. Dia memiliki karakteristik yang
membedakannya dengan bahasa mesin, 1) Dalam penggunaan numeric operation
code (opcodes) bahasa assembly menggantinya dengan mnemonic code, 2) Memberikan
kemudahan penulisannya dibandingkan dengan bahasa mesin, 3) Mendukung
pelacakkan kesalahan penulisan operation code, 4) Bahasa assembly memberikan
kemudahan dalam memodifikasi program karena menggunakan opperand sebagai
penamaan simbol yang biasa diasosiasikan sebagai data atau instruksi, 5) Data
yang dinyatakan bahasa assembly adalah dalam notasi desimal. Hal ini dilakukan
untuk mencegah konversi secara manual dari konstanta ke dalam representasi
internal mesin.
Bahasa assembly mempunyai perintah
dasar, salah satunya MOV. MOV adalah perintah untuk mengisi, memindahkan, memperbaharui
isi suatu register, variabel ataupun suatu lokasi memori. Penulisan perintah:
MOV [operand A],[operand B]
Dengan ketentuan operand A merupakan
register, variabel, lokasi memori dan ketentuan isi operand B berupa register,
variabel, lokasi memori ataupun bilangan. Operand B merupakan bilangan asal
yang akan diisikan ke operand A, dengan kata lain operand A merupakan tujuan
pengisian atau penduplikatan dari operand B.
Bahasa assembly juga mempunyai suatu
layanan interrupt. Interupt merupakan sebuah prosedur terprogram mesin yang
siap dipanggil untuk dieksekusi. Interupt ini berkaitan dengan fungsi dasar
operasi komputer, misalnya menulis karakter, menset kursor, mambaca karakter
dan lain-lain. Interupt dipanggil dengan menuliskan nomor interuptnya, dan
penulisan dalam bahasa ini tidak case sensitive, sehingga penulisan huruf balok
atau kecil sama saja.
Pencetakan sebuah karakter pada
bahasa assembly dilakukan berdasarkan kode ASCII. Artinya, jika ingin mencetak
sebuah huruf, maka pengkodean yang ditulis pada MOV DL adalah kode huruf
tersebut dalam kode ASCII.
III.
ANALISA
1.
Menampilkan huruf ”A”
Untuk menampilkan huruf ”A”,dapat
mengetikkan script berikut.
MOV
AH,02H
MOV
DL,41H
INT
21H
INT 20H
Ø MOV AH,02 merupakan nilai servis
untuk mencetak karakter, atau dengan kata lain mengisi register AH dengan data
02.
Ø MOV DL,41H merupakan register
DL yang diisi kode ASCII karakter yang akan dicetak, yaitu mencetak huruf
"A". Sehingga kode ASCIInya bernilai 41. Huruf H disini menandakan
heksa.
Ø INT 21H merupakan perintah untuk
mencetak karakter pada register DL, yaitu huruf ”A”.
Ø INT 20H merupakan perintah untuk
mengakhiri program.
2.
Menampilkan huruf ”P”
MOV
AH,02H
MOV
DL,50H
INT
21H
INT 20H
Ø MOV AH,02 merupakan nilai servis
untuk mencetak karakter, atau dengan kata lain mengisi register AH dengan data
02.
Ø MOV DL,50H merupakan register
DL yang diisi kode ASCII karakter yang akan dicetak, yaitu mencetak huruf
"P". Sehingga kode ASCIInya bernilai 50. Huruf H disini menandakan
heksa.
Ø INT 21H merupakan perintah untuk
mencetak karakter pada register DL, yaitu huruf ”P”.
Ø INT 20H merupakan perintah untuk
mengakhiri program.
3.
Menampilkan nama ”SEKAR RINIA”
MOV
AH,02H
MOV
DL,53H
INT
21H
MOV
DL,45H
INT
21H
MOV
DL,4BH
INT
21H
MOV
DL,41H
INT
21H
MOV
DL,52H
INT
21H
MOV
DL,20H
INT
21H
MOV
DL,52H
INT
21H
MOV
DL,49H
INT
21H
MOV
DL,4EH
INT
21H
MOV
DL,49H
INT
21H
MOV
DL,41H
INT
21H
INT 20H
Ø MOV AH,02 merupakan nilai
servis untuk mencetak karakter, atau dengan kata lain mengisi register AH
dengan data 02.
Ø MOV DL,53H merupakan register DL yang
diisi kode ASCII karakter yang akan dicetak, yaitu akan mencetak huruf ”S”.
Sehingga kode ASCIInya bernilai 53. Huruf H disini menandakan heksa.
Lalu diikuti INT 21H merupakan
perintah untuk mencetak karakter pada register DL, yaitu huruf ”S”.
Ø MOV DL,45H merupakan register DL yang
diisi kode ASCII karakter yang akan dicetak, yaitu akan mencetak huruf ”E”.
Sehingga kode ASCIInya bernilai 45.
Lalu diikuti INT 21H merupakan
perintah untuk mencetak karakter pada register DL, yaitu huruf ”E”.
Ø MOV DL,4BH merupakan register DL yang
diisi kode ASCII karakter yang akan dicetak, yaitu akan mencetak huruf ”K”. Sehingga
kode ASCIInya bernilai 4B.
Lalu diikuti INT 21H merupakan
perintah untuk mencetak karakter pada register DL, yaitu huruf ”K”.
Ø MOV DL,41H merupakan register DL yang
diisi kode ASCII karakter yang akan dicetak, yaitu akan mencetak huruf ”A”.
Sehingga kode ASCIInya bernilai 41.
Lalu diikuti INT 21H merupakan
perintah untuk mencetak karakter pada register DL, yaitu huruf ”A”.
Ø MOV DL,52H merupakan register DL yang
diisi kode ASCII karakter yang akan dicetak, yaitu akan mencetak huruf ”R”.
Sehingga kode ASCIInya bernilai 52.
Lalu diikuti INT 21H merupakan
perintah untuk mencetak karakter pada register DL, yaitu huruf ”R”.
Ø MOV DL,20H merupakan register DL yang
diisi kode ASCII karakter yang akan dicetak, yaitu akan mencetak karakter
spasi. Sehingga kode ASCIInya bernilai 20.
Lalu diikuti INT 21H merupakan
perintah untuk mencetak karakter pada register DL, yaitu karakter spasi.
Ø MOV DL,52H merupakan register DL yang
diisi kode ASCII karakter yang akan dicetak, yaitu akan mencetak huruf ”R”.
Sehingga kode ASCIInya bernilai 52.
Lalu diikuti INT 21H merupakan
perintah untuk mencetak karakter pada register DL, yaitu huruf ”R”.
Ø MOV DL,49H merupakan register DL yang
diisi kode ASCII karakter yang akan dicetak, yaitu akan mencetak huruf ”I”.
Sehingga kode ASCIInya bernilai 49.
Lalu diikuti INT 21H merupakan
perintah untuk mencetak karakter pada register DL, yaitu huruf ”I”.
Ø MOV DL,4EH merupakan register DL yang
diisi kode ASCII karakter yang akan dicetak, yaitu akan mencetak huruf ”N”.
Sehingga kode ASCIInya bernilai 4E.
Lalu diikuti INT 21H merupakan
perintah untuk mencetak karakter pada register DL, yaitu huruf ”N”.
Ø MOV DL,49H merupakan register DL yang
diisi kode ASCII karakter yang akan dicetak, yaitu akan mencetak huruf ”I”.
Sehingga kode ASCIInya bernilai 49.
Lalu diikuti INT 21H merupakan
perintah untuk mencetak karakter pada register DL, yaitu huruf ”I”.
Ø MOV DL,41H merupakan register DL yang
diisi kode ASCII karakter yang akan dicetak, yaitu akan mencetak huruf ”A”.
Sehingga kode ASCIInya bernilai 41.
Lalu diikuti INT 21H merupakan
perintah untuk mencetak karakter pada register DL, yaitu huruf ”A”.
Ø INT 20H merupakan perintah untuk
mengakhiri program.
Ø Penulisan MOV AH,02H hanya ditulis
sekali diawal program karena ini diibaratkan mengambil spidol/alat tulis.
Sehingga untuk menuliskan program yang dieksekusi hanya akan mengambil alat
tersebut sekali di awal.
IV.
KESIMPULAN
Dalam bahasa assembly ada beberapa
jenis instruksi, seperti MOV yang digunakan sebagai instruksi pemindahan data,
INT 21 untuk mencetak karakter pada register DL, dan INT 20H digunakan untuk
mengakhiri program.
Tidak ada komentar:
Posting Komentar