Intinya disini akan dibuat program assembly yang berkaitan dengan mencetak kalimat yang seusai dengan yang sudah disimpan di memori dan nantinya akan ada skor dari kalimat yang dicetak,
Listing Program :
INCLUDE 'emu8086.inc'
.MODEL SMALL
.CODE
ORG 100h
DEFINE_PRINT_NUM
DEFINE_PRINT_NUM_UNS
TData: JMP soal1
Kal0 DB 13,10,'Tentukan Singkatan dari soal dibawah ini ! Gunakan Huruf Kapital !',13,10,'$'
Kal1 DB 13,10,10,'1. SISTEM OPERASI = ',07,07,'$'
Kal2 DB 13,10,10,'2. PEMROGRAMAN BEROIENTASI OBJEK = ',07,07,'$'
Kal3 DB 13,10,10,'3. TEKNIK RISET OPERASI = ',07,07,'$'
skor DW ?
skorakhir DB 13,10,10,'Nilai Anda: ',07,07,'$'
dari DB ' dari 100 $'
T_Enter EQU 0DH
Buffer DB 23,?,23 DUP(?)
soal1: MOV AH,09
LEA DX, Kal0
INT 21h
MOV AH,09
LEA DX, Kal1
INT 21h
MOV AH,0Ah
LEA DX,Buffer
INT 21h
LEA BX,Buffer+2
CMP BYTE PTR [BX],'S'
JNE soal2
CMP BYTE PTR [BX]+1,'O'
JNE soal2
ADD Skor,30
MOV AX,Skor
JMP soal2
soal2:
MOV AH,09
LEA DX, Kal2
INT 21h
MOV AH,0Ah
LEA DX,Buffer
INT 21h
LEA BX,Buffer+2
CMP BYTE PTR [BX],'P'
JNE soal3
CMP BYTE PTR [BX]+1,'B'
JNE soal3
CMP BYTE PTR [BX]+2,'O'
JNE soal3
ADD Skor,35
MOV AX,Skor
JMP soal3
soal3:
MOV AH,09
LEA DX, Kal3
INT 21h
MOV AH,0Ah
LEA DX,Buffer
INT 21h
LEA BX,Buffer+2
CMP BYTE PTR [BX],'T'
JNE hasil
CMP BYTE PTR [BX]+1,'R'
JNE hasil
CMP BYTE PTR [BX]+2,'O'
JNE hasil
ADD Skor,35
MOV AX,Skor
JMP hasil
hasil:
MOV AH,09
LEA DX,Skorakhir
INT 21h
MOV AX,Skor
CALL PRINT_NUM
MOV AH,09
LEA DX,dari
INT 21h
END TData
Output :
0 Comments