Wednesday 11 December 2013

Perbandingan asemblay

.MODEL SMALL
.CODE
ORG 100h
Tdata :    JMP Proses
    BilA DB 4
    BilB DB 50
    Kal0 DB 'Bilangan A lebih kecil dari bilangan B $'
    Kal1 DB 'Bilangan A sama dengan bilangan B $'
    Kal2 DB 'Bilangan A lebih besar dari bilangan B $'
Proses :
    MOV AL, BilA    ; Masukkan bilangan A pada AL
    CMP AL, BilB    ; Bandingkan AL(BilA) dengan bilangan B
    JB Akecil        ; Jika BilA < BilB, lompat ke Akecil
    JE Sama        ; Jika BilA = BilB, lompat ke Sama
    JA Abesar    ; Jika BilA > BilB, lompat ke Abesar Akecil :
    LEA DX, Kal0    ; Ambil offset Kal0
    JMP Cetak    ; Lompat ke cetak
Sama :
    LEA DX, Kal1    ; Ambil offset Kal1
    JMP Cetak    ; Lompat ke cetak Abesar :
    LEA DX, Kal2    ; Ambil offset Kal2
Akecil :   
    LEA DX, Kal0;
    JMP cetak;
    LEA DX, Kal1;
Abesar :
    LEA DX, Kal2;
    JMP cetak;
    LEA DX, Kal0;
Cetak :
    MOV AH, 09    ; Servis untuk mencetak kalimat
    INT 21h        ; Cetak kalimat !!
EXIT:    INT 20h        ; Kembali ke DOS.
END TData


No comments: