Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- INCLUDE "EMU8086.INC"
- .MODEL SMALL
- .STACK 100H
- .DATA
- TEMP DW ?
- NUM DW 0
- SUM DW 0
- .CODE
- MAIN PROC
- MOV AX,@DATA
- MOV DS,AX
- CALL DECIMAL_INPUT
- PRINTN
- CALL DECIMAL_OUTPUT
- EXIT:
- MOV AH,4CH
- INT 21H
- MAIN ENDP
- ;FUNCTION FOR DECIMAL NUMBER INPUT
- DECIMAL_INPUT PROC
- LOOP1:
- MOV AH,1
- INT 21H
- CMP AL,13
- JE LOOP1_END
- SUB AL,48
- XOR AH,AH
- MOV TEMP,AX
- MOV AX,SUM
- MOV CX,10
- MUL CX
- ADD AX,TEMP
- MOV SUM,AX
- JMP LOOP1
- LOOP1_END:
- MOV AX,SUM
- MOV NUM,AX
- RET
- DECIMAL_INPUT ENDP
- ;FUCTION FOR DECIMAL NUMBER OUTPUT
- DECIMAL_OUTPUT PROC
- MOV BP,SP
- LOOP2:
- XOR AX,AX
- XOR DX,DX
- CMP NUM,0
- JE LOOP3
- MOV AX,NUM
- MOV BX,10
- DIV BX
- MOV NUM,AX
- ADD DX,48
- PUSH DX
- JMP LOOP2
- LOOP3:
- POP DX
- MOV AH,2
- INT 21H
- CMP SP,BP
- JNE LOOP3
- RET
- DECIMAL_OUTPUT ENDP
- END MAIN
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement