-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathEMU8086CALC.asm
72 lines (59 loc) · 1.37 KB
/
EMU8086CALC.asm
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
;Coded By : Mohamed El Sayed
;www.ionerds.com - 2016
;EMU8086CALC.ASM
;EMU8086 v 4.08 compatible code
;Output : .COM - .EXE
;un-comment the next line to create .EXE file, leave it commented to create .COM file | NOTE : .EXE is not tested |
;#MAKE_EXE#
.MODEL TINY
.CODE
JMP MAIN
;<===(TELETYPE METHOD)===>
PRINT: LODSB
CMP AL, '$'
JE DONE
MOV AH, 0EH
INT 10H
JMP PRINT
DONE: RET
MAIN PROC
; MOV AH, 09H ;| PRINTING USING DOS CALL AH 09H INT 21H
; LEA DX, STNUM ;|
; INT 21H ;|
LEA SI, STNUM ;|PRINTING USING PRINT FUNCTION
CALL PRINT ;|TELETYPE PRINTING
MOV AH, 01H
INT 21H
SUB AL, '0'
MOV X, AL
MOV AH, 09H
LEA DX, NL
INT 21H
LEA DX, NDNUM
INT 21H
MOV AH, 01H
INT 21H
SUB AL, '0'
MOV Y, AL
MOV DL, Y
ADD DL, X
MOV R, DL
ADD R, '0'
MOV AH, 09H
LEA DX, NL
INT 21H
LEA DX, RESULT
INT 21H
LEA DX, R
INT 21H
MOV AX, 4C00H
INT 21H
ENDP
X DB 0 ,13,10,"$"
Y DB 0 ,13,10,"$"
R DB 0 ,13,10,"$"
NL DB " ",13,10,'$'
STNUM DB "ENTER THE FIRST NUMBER : $"
NDNUM DB "ENTER THE SECOND NUMBER : $"
RESULT DB "RESULT IS : $"
END MAIN