Setelah beberapa kali kocar kacir belum-belum bisa dan error terus, tapi saya terus mencoba untuk mengerjakan tugas yang kadang dikatakan sulit yang sering diberikan oleh seorang dosen yang sering disebut-sebut dosen agak mengerikan karena sedikit-sediki tugas tapi itu ternyata ada manfaatnya bagi saya karena saya jadi bisa.Ok kita lansung saja
Gini caranya mas bro buat code makronya yang untuk .asm seperti contoh dibawah ini :
Makro.asm
INCLUDE makro.MCR ;
code untuk memanggil Pustaka macro
.MODEL SMALL
.CODE
ORG 100h
Mulai : JMP Proses
Kal0 DB
13,10,'CONTOH CETAK KALIMAT DENGAN MACRO $'
Kal1 DB
13,10,'A = $'
Kal2 DB
13,10,'B = $'
Kal3 DB
13,10,'A*B = $'
Kal4 DB
13,10,'A+B = $'
Kal5 DB
13,10,'A-B = $'
Kal6 DB
13,10,'A/B = $'
a Dw 8
b Dw 2
Proses:
Cetak_Kar 'A'
Cetak_Klm Kal0
MOV AH,09
MOV DX,OFFSET
Kal1
int 21h
Cetak_Angka a
MOV AH,09
MOV DX,OFFSET
Kal2
int 21h
Cetak_Angka b
MOV AH,09
MOV DX,OFFSET Kal3
int 21h
Perkalian
a,b
MOV AH,09
MOV DX,OFFSET
Kal4
int 21h
Penjumlahan a,b
MOV AH,09
MOV DX,OFFSET
Kal5
int 21h
Pengurangan a,b
MOV AH,09
MOV DX,OFFSET
Kal6
int 21h
Pembagian
a,b
INT 20h
END Mulai
Setelah Macronya jadi selanjutnya bikin untuk Pustakanya yang nanti setelah jadi disimpan namamacro.mcr seperti contoh dibawah ini:
makro.mcr
Cetak_Kar Macro Kar
MOV AH,02
MOV DL,Kar
INT 21H
EndM
Cetak_Klm MACRO
Klm
LEA DX,Klm
MOV AH,09
INT 21h
ENDM
Cetak_Angka
MACRO Angka
mov ax,angka
Tampil
endm
Perkalian
MACRO a,b
MOV AX,a
Mul b
Tampil
endm
Penjumlahan
MACRO a,b
MOV AX,a
ADD AX,b
Tampil
endm
Pengurangan
MACRO a,b
MOV AX,a
SUB AX,b
Tampil
endm
Pembagian
MACRO a,b
SUB
DX,DX
MOV AX,a
DIV b
Tampil
endm
Tampil Macro
local looping, cetak
mov bx,10
xor cx,cx
looping:
xor dx,dx
div bx ;
push dx
inc cx
cmp ax,0
jne looping
cetak:
pop dx
add dl,'0'
mov ah,02h
int 21h
loop cetak
endM
Setelah selesai membuatnya coba dijalankan maka nanti akan hasinya kira-kira seperti ini kalo yang kamu ketik gak salah: