Klik.

Minggu, 27 November 2011

Input Biodata - Assembler

.MODEL SMALL
.CODE
ORG 100H
MULAI: jmp cetak

biodata db ’BIODATA$’
nim     db 13,10,’NIM      : $’
nama    db 13,10,’Nama     : $’
kel     db 13,10,’Kelas    : $’

inputnim db 15,?,15 dup(?)
inputnama db 31,?,31 dup(?)
inputkel db 13,10,8,?,8 dup(?)

cetak:     mov ax,03h
int 10h               

mov ah,09h
mov dx,offset biodata
int 21h  

mov ah,09h
mov dx,offset nim ;label nim..
int 21h

mov ah,0ah
mov dx,offset inputnim ;inputan nim
push dx
int 21h

MOV BX,OFFSET inputnim  ;proses nim
inc BX            ; BX = BX + 1

MOV DL,[BX]            ; ISI DX DENGAN [BX]
XOR DH,DH            ;DH = 0
inc BX
ADD BX,DX

MOV DL, '$'
MOV [BX],DL            ;MASUKAN DL KE [BX] ;nim

mov ah,09h
mov dx,offset nama  ;nama
int 21h

mov ah,0ah
mov dx,offset inputnama
push dx
int 21h

MOV BX,OFFSET inputnama ;nama
inc BX            ; BX = BX + 1

MOV DL,[BX]            ; ISI DX DENGAN [BX]
XOR DH,DH            ;DH = 0
inc BX
ADD BX,DX

MOV DL, '$'
MOV [BX],DL            ;MASUKAN DL KE [BX]

mov ah,09h
mov dx,offset kel ;label kelompk.
int 21h

mov ah,0ah
mov dx,offset inputkel ;inputan kel
push dx
int 21h

MOV BX,OFFSET inputkel  ;proses kel.
inc BX            ; BX = BX + 1

MOV DL,[BX]            ; ISI DX DENGAN [BX]
XOR DH,DH            ;DH = 0
inc BX
ADD BX,DX

MOV DL,'$'
MOV [BX],DL

;output
Output:
mov ax,03h
int 10h

mov ah,09h
MOV DX,OFFSET biodata
MOV AH,09H
INT 21H

MOV DX,OFFSET nama    ;CETAK nim ;nim
MOV AH,09H
INT 21H

POP DX            ;AMBIL DX DARI STACK
inc DX
inc DX

MOV AH,09H
INT 21H

MOV DX,OFFSET nim    ;CETAK nim ;nama
MOV AH,09H
INT 21H

POP DX            ;AMBIL DX DARI STACK
inc DX
inc DX

MOV AH,09H
INT 21H

MOV DX,OFFSET kel    ;CETAK kel;nama
MOV AH,09H
INT 21H

POP DX            ;AMBIL DX DARI STACK
inc DX
inc DX

MOV AH,09H
INT 21H

mov ah,01h
int 21h

selesai: int 20h

end mulai

Tidak ada komentar:

Posting Komentar