Skip to content

Instantly share code, notes, and snippets.

@Xzenia
Created July 28, 2019 02:01
Show Gist options
  • Save Xzenia/078f9c5f3059fde9e8be4cc719041c30 to your computer and use it in GitHub Desktop.
Save Xzenia/078f9c5f3059fde9e8be4cc719041c30 to your computer and use it in GitHub Desktop.
Adds four numbers. Written in 8086 assembly.
.MODEL SMALL
.STACK 100H
.DATA
a db 'Input 1st Number: $ '
b db 10,13,'Input 2nd Number: $ '
c db 10,13,'Input 3rd Number: $ '
d db 10,13,'Input 4th Number: $ '
e db 10,10,10,10,13,'SUM: $ '
.CODE
MOV AX,@DATA
MOV DS,AX
MOV AH,09H
MOV DX,OFFSET a
INT 21H
MOV AH,01H
INT 21H
MOV BH,AL
SUB BH,30H
MOV AH,01H
INT 21H
MOV BL,AL
SUB BL,30H
MOV AH,09H
MOV DX,OFFSET b
INT 21H
MOV AH,01H
INT 21H
MOV CH,AL
SUB CH,30H
MOV AH,01H
INT 21H
MOV CL,AL
SUB CL,30H
MOV AH,09H
MOV DX,OFFSET c
INT 21H
MOV AH,01H
INT 21H
MOV DH,AL
SUB DH,30H
MOV AH,01H
INT 21H
MOV DL,AL
SUB DL,30H
;COMPUTATION PART
ADD BL,CL
MOV AX,0
MOV AL,BL
AAA
MOV CL,AL
ADD BH,AH
ADD BH,CH
MOV AX,0
MOV AL,BH
AAA
MOV BH,AH
MOV CH,AL
ADD CL,DL
MOV AX,0
MOV AL,CL
AAA
MOV CL,AL
ADD CH,AH
ADD CH,DH
MOV AX,0
MOV AL,CH
AAA
MOV CH,AL
ADD BH,AH
MOV AX,0
MOV AL,BH
AAA
MOV BH,AL
;INPUTING 4TH NUMBER
MOV AH,09H
MOV DX,OFFSET d
INT 21H
MOV AH,01H
INT 21H
MOV DH,AL
MOV AH,01H
INT 21H
MOV DL,AL
;ADDING SAID 4TH NUMBER
ADD CL,DL
MOV AX,0
MOV AL,CL
AAA
MOV CL,AL
ADD CH,AH
ADD CH,DH
MOV AX,0
MOV AL,CH
AAA
MOV CH,AL
ADD BH,AH
MOV AX,0
MOV AL,BH
AAA
MOV BH,AL
ADD BH,30H
ADD CH,30H
ADD CL,30H
;OUTPUT
MOV AH,09H
MOV DX,OFFSET e
INT 21H
MOV AH,02H
MOV DL,BH
INT 21H
MOV DL,CH
INT 21H
MOV DL,CL
INT 21H
INT 20H
END
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment