Nama : Muhammad Luthfi
Kelas : 1CA
NIM : 061430700516
Pada postingan kali ini saya akan membahas tentang procedure dan macro tipe pada assembly. Untuk penjelasan singkatnya menurut saya :
Procedure merupakan tipe bahasa assembly yang memanggil statemen dari Bawah/Bagian dari program itu sendiri Ciri khas procedure yaitu Call ****_kar pada awal program serta Proc near dan diakhiri dengan ENDP
Contoh diatas merupakan potongan program dari sebuah procedure yang memiliki cara kerja :
1-proses : call ketik_kar
int 20h
Normalnya suatu program assembly akan berhenti jika bertemu dengan int20h, tapi karena menggunakan sebuah fungsi call, dia akan memanggil statemen dibawahnya (dibawah int20h) untuk dijalankan hingga statemen tesebut berhenti di ENDP
2- Setelah selesai program tidak akan mengalami masalah karena statemen dibawah int20h telah dipanggil keatas sehingga dibawahnya tersisa END PROSES
Macro merupakan tipe bahasa assembly yang memanggil statemen dari Bagian atas program itu sendiri. Ciri khas macro yaitu statemen yang berada di atas kode awal program (Macro kar) dan ENDM.
yang dimaksud oleh saya "bagian atas program itu sendiri" yaitu seperti pada potongan program diatas :
1- Statemen cetak macro kar (menandakan statemen macro) yang berada diatas .model small yang biasanya terletak di bagian awal program assembly
2-Cara kerjanya yaitu memanggil statemen Cetak macro kar yang berada di bagian atas program dengan
proses :
cetak 'A'
3-Kemudian assembly akan memproses statemen macro tersebut, adapun mengapa harus cetak 'A' adalah terletak pada bagian MOV DL,kar dan kar tersebut di "wakilkan" pada proses program 'A'. Bisa saja kita hanya menggunakan cetak tanpa menggunakan 'A' jika MOV DL,kar ditulis ulang dengan MOV DL,'A'
Sekarang disini ada beberapa contoh program assembly yang dapat dibuat dengan macro dan procedure.
MEMBUAT KARAKTER A-Z
Buka dulu program assembly nya dengan cara biasa yaitu :
cd\
d:
cd 1ca
(dimana 3 file assembly berada, file assembly saya berada di D:\1CA)
Cukup salin dengan rapi dan benar kode-kode dibawah ini dengan benar untuk mencoba membuat karakter a-z baik dengan procedur maupun macro :)
Kode Pertama, Procedure Type :
.model small
.code
org 100h
proses : call ketik_kar
int 20h
ketik_kar proc near
MOV AH,2H
MOV DL,'A'
MOV CX,26
Ulang :
INT 21H
ADD DL,1
LOOP Ulang
RET
ketik_kar ENDP
END PROSES
________________________________________________________________________
Kode kedua, Macro Type :
cetak macro kar
MOV AH,2H
MOV CX,26
MOV DL,kar
Ulang :
INT 21H
INC DL
LOOP Ulang
ENDM
.mode small
.code
org 100h
proses :
cetak 'A'
int 20h
end proses
______________________________________________________________________________
Cara menjalankan :
Seperti sebelum-belumnya pada artikel assembly, Setelah di save- misal dengan nama AZ1WRM.ASM
maka setelah berhenti pada cd 1ca ,,,..
TASM AZ1WRM.ASM (Nama file)
Jika tidak terdapat Error maka selanjutnya
TLINK /t AZ1WR.MASM (Nama file- tidak memakai .asm tidak apa apa)
Kemudian tinggal ketik AZ1WRM (Nama File)
Hasil :
Baik kode pertama (Procedure) maupun kode kedua (Macro) akan menghasilkan hasil yang sama yaitu karakter a-z
Demikian posting saya kali ini, terima kasih atas perhatiannya. Sekali lagi, laporannya nyusul :p
0 comments:
Post a Comment
> Berkomentarlah dengan bahasa yang baik dan bisa dimengerti
> Komentarlah dengan menggunakan Open ID (Google dll.)
x OOT ( Out Of Topic)
x Spam
x Link Iklan/promosi tanpa seizin saya