Senin, 08 Desember 2014

Penggunaan Procedure Pada Assembly

Diposting oleh Unknown di 20.15
 Assalamuallaikum Wr.Wb

Nama                    : Marini Ayu Pangestika
Kelas                    : 1 CB
NIM                      : 061430700537
Mata Kuliah         : Praktek Bahasa Rakitan


Procedure sendiri digunakan untuk memudahkan kita dalam membuat program di Assembly. Kita tinggal memanggil procedure yang telah dibuat.

Untuk membuat procedure bisa diilustrasikan  seperti berikut :
NamaP Proc NEAR/FAR
+ ————– +
|  Program  |
+—————-+
 Ret
 NamaP ENDP”NamaP” adalah nama dari procedure yang kita definisikan sendiri. NEAR/FAR merupakan bentuk dari procedure tersebut. Bentuk NEAR digunakan jika procedure tersebut nantinya dipanggil oleh program yang letaknya masih satu segment dari procedure tersebut. Sebaliknya bentuk FAR ini digunakan bila procedure dapat dipanggil dari segment lain. Bentuk ini akan kita gunakan pada program EXE.Perintah RET(Return) digunakan untuk mengembalikan kontrol program pada simpemanggil procedure. Pada bentuk NEAR perintah RET ini akan memPOP atau mengambil register IP dari stack sebagai alamat loncatan menuju program pemangil procedure. Sedangkan pada bentuk FAR perintah RET ini akan mengambil register IP dan CS dari stack sebagai alamat loncatan menuju program pemanggil procedure. Alamat kembali  untuk procedure disimpan pada stack pada saat procedure tersebut dipanggil dengan perintah CALL. Dengan syntak :CALL NamaP Berikut kita akan membuat program dengan procedure.
Pertama kita siapkan  tersebih dahulu kompiler Assembly nya, jika Anda belum punya silahkan download di sini.
Setelah itu buka command prompt atau bisa digantikan dengan DOSBox yang digunakan untuk mengkompile dan linking program.
Seperti berikut
Kemudian siapkan text editor untuk mengetikkan kode program, ada banyak text edtior, Anda bisa menggunakan notepad, notepad++, sublime text,edit,dll.
Kita akan membuat program mencetak karakter dengan procedure,berikut kode programnya.
.model small
.code
org 100h
proses     : call cetak_kar
int 20h
cetak_kar     proc near
mov ah,2h
mov dl,’A’
int 21h
ret
cetak_kar    endp
end     proses
Simpan dengan ekstensi *.ASM. Setelah itu kita kompile program tersebut di dengan perintah tasm namaprogram , selanjutnya kita linking program dengan perintah tlink/t namaprogram.

Ketika program tersebut dijalankan maka akan menghasilkan karakter ‘A’.
Selanjutnya kita coba membuat program untuk mencetak karakter A – Z satu warna, masih menggunakan procedure.
.model small
.code
org 100h
proses     : call cetak_kar
int 20h
cetak_kar     proc near
mov ah,2h
mov dl,’A’
mov cx,26
ulang        :
int 21h
inc dl
loop ulang
ret
cetak_kar    endp
end     proses
Jalankan program diatas, maka akan menghasilkan karakter A-Z.
Kita juga bisa mencetak karakter A – Z warna – warni, berikut kode programnya
.model small
.code
org 100h
proses     : call cetak_kar
int 20h
cetak_kar     proc near
mov ah,9h
mov bl,99h
mov cx,26
ulang        :
int 10h
inc bl
loop ulang
mov ah,2h
mov dl,’A’
mov cx,26
lagi        :
int 21h
inc dl
loop lagi
ret
cetak_kar    endp
end     proses
Jalankan program tersebut, maka akan menghasilkan karakter A – Z warna-warni.
Mungkin sampai disini dulu postingan kali ini, Saya mohon maaf bila ada kata-kata yang kurang dimengerti.
tutorial ini dapat di download disini :D
Terimakasih

0 komentar:

Posting Komentar

 

Marini Sudharmono Copyright © 2012 Design by Antonia Sundrani Vinte e poucos