SCRIPT:
ctk_kar macro
lea dx, #1
mov ah, 09h
int 21h
#em
input macro
mov ah, 01h
int 21h
sub al, 30h
mov bh, al
mov ah, 01h
int 21h
sub al, 30h
mov bl, al
mov dl, 03Ah
mov ah, 02h
int 21h
#em
output macro
add bl, 30h
mov ah, 02h
int 21h
#em
kali macro
mul cl
mov [si], al
inc si
#em
org 100h
jmp mulai
cba db 13, 10, '_______________________________$'
cb0 db 13, 10, '| No| MK |SKS |Nilai$'
cbb db 13, 10, '_______________________________$'
cb1 db 13, 10, '| 1 |MK1 |4 |$'
cb2 db 13, 10, '| 2 |MK2 |1 |$'
cb3 db 13, 10, '| 3 |MK3 |3 |$'
cb4 db 13, 10, '| 4 |MK4 |2 |$'
cb5 db 13, 10, ' IPK: $'
proses: cmp cl, 04h
je mk1
cmp cl, 03h
je mk2
cmp cl, 02h
je mk3
jmp mk4
mk1: kali
jmp dua
mk2: kali
jmp tiga
mk3: kali
jmp empat
mk4: kali
jmp jumlah
mulai: xor dx, dx
mov cx, 0FFh
mov si, 120h
ctk_kar cba
ctk_kar cb0
ctk_kar cbb
satu: xor bx, bx
xor dx, dx
ctk_kar cb1
input
mov cl, 04h
jmp dec_nilai
dua: ctk_kar cb2
input
mov cl, 03h
jmp dec_nilai
tiga: ctk_kar cb3
input
mov cl, 02h
jmp dec_nilai
empat: ctk_kar cb4
input
mov cl, 01h
jmp dec_nilai
dec_nilai: cmp bh, 09h
je sembilan
cmp bh, 08h
je delapan
cmp bh, 07h
je tujuh
jmp enam
sembilan: mov dl, 41h
mov ah, 02h
int 21h
mov al, 04h
jmp proses
delapan: mov dl, 42h
mov ah, 02h
int 21h
mov al, 03h
jmp proses
tujuh: mov dl, 43h
mov ah, 02h
int 21h
mov al, 02h
jmp proses
enam: mov dl, 44h
mov ah, 02h
int 21h
mov al, 01h
jmp proses
jumlah: dec si
mov bh, [si]
dec si
mov bl, [si]
add bh, bl
dec si
mov bl, [si]
add bh, bl
dec si
mov bl, [si]
add bh, bl
mov al, bh
mov cl, 0Ah
div cl
mov [si], ah
inc si
mov [si], al
ctk_kar cb5
mov dl, [si]
add dl, 30h
mov ah, 02h
int 21h
mov dl, 02Eh
mov ah, 02h
int 21h
dec si
mov dl, [si]
add dl, 30h
mov ah, 02h
int 21h
akhir: int 20h
Membuat program menghitung IPK menggunakan bahasa assembly
Posted by Fiya Phyong
Sabtu, Oktober 09, 2010, under |
3
komentar
3 Responses So Far:
cara menampilkannya gimana??
jelaskan
cara input pakai sms32v50(simulasi mikroprosesor) gimana ?
itu pakai borland bisa gak ya?