Dosen:Nahar Mardiyantoro,M.kom rabu,21-9-2011
Ketikan code ini dalam notepad
.model small
.code
org 100h
Mulai :
jmp proses
bila db 10
kal1 db 'sama$'
kal2 db 'lebih kecil$'
kal3 db 'lebih besar$'
Proses:
mov al,bila
cmp al,8
je sama
ja kecil
jb besar
sama : mov ah,09h
lea dx, kal1
int 21h
int 20h
kecil : mov ah,09h
lea dx, kal2
int 21h
int 20h
besar : mov ah,09h
lea dx, kal3
int 21h
int 20h
End mulai
Instruksi-instruksi turbo assembler di anataranya adalah:
cmp = compare(sama artinya dengan membandingkan)
je = jump equal(membandingkan dengan nilai sama)
jne = jump not equal(membandingkan dengan nilai tidak sama)
saya akan menggunakan pembanding 3 macam yaitu sama, lebih kecil dan lebih besar maka digunkan je (jump equal = lompat jika sama), ja (jump above = lompat ke atas) dan jb (jump bellow= lompat ke bawah).
Sedangkan tanda '$' itu sendiri berfungsi untuk membatasi karakter karena jika tanda $ dihapus yang terjadi adalah munculnya karakter yang sangat banyak atau tidak terbatas. sedangkan kapasitas terbatas.
mov al kerjakan al berisi (isi dari al/bil a =10)
cmp al, = bandingkan isi dari al =8
kemudian masuk dalam proses yang mana:
cmp al,8 akan di bandingkan dengan bila db 10,yang ternyata nilai lebih kecil dari sepuluh kemudian je akan memanggil rumusan yang ada di :
kecil : mov ah,09h
lea dx, kal2
int 21h
int 20h
kemudain rumusan yang ada di kecil: akan memanggil kal2 yang artinya dia akan memanggil isi dari kal2 yaitu lebih kecil maka hasil dari lat3 di atas dalam dos akan muncul :lebih kecil
Lea = Load Effective Address berfungsi mentransfer opsan sumber 16 bit dalam memori ke tujuan 16 bit. lea dx, kal1 berarti dengan alamat kal1 akan dimasukan ke dx.
int 21h merupakan nomor interupsi dimana nama interupsi tersebut adalah DOS function services ,interupsi yang berarti menampilkan data agar dapat dibaca dan int 20h merupakan perintah cetak