You are on page 1of 8

DEPARTMENT OF COMPUTER

ENGINEERING
University College of Engineering &
Technology Bahauddin Zakariya
University, Multan.

Manual Details

Subject Computer Architecture


Session 2019 -2023
Pr. Hrs. per Week 3Hrs. (Pr)
Lab Instructor Engr. Abdul Rehman

Submission Details

Submitted by Muhammad Usama Saghar

Roll No. 2019-CPE-27

Manual No 04

Manual Title

(ADDITION, SUBTRACTION, MULTIPLICATION, DIVISION)


Write an assembly program to print the sum of two digits.

// an assembly program for print the sum of two digits.

DATA SEGMENT

NUM1 DB ?

NUM2 DB ?

RESULT DB ?

MSG1 DB 10,13,"ENTER FIRST NUMBER TO ADD : $"

MSG2 DB 10,13,"ENTER SECOND NUMBER TO ADD : $"

MSG3 DB 10,13,"RESULT OF ADDITION IS : $"

ENDS

CODE SEGMENT

ASSUME DS:DATA CS:CODE

START:

MOV AX,DATA

MOV DS,AX

LEA DX,MSG1

MOV AH,9

INT 21H

MOV AH,1

INT 21H

SUB AL,30H

MOV NUM1,AL

LEA DX,MSG2

MOV AH,9

INT 21H

MOV AH,1
INT 21H

SUB AL,30H

MOV NUM2,AL

ADD AL,NUM1

MOV RESULT,AL

MOV AH,0

AAA

ADD AH,30H

ADD AL,30H

MOV BX,AX

LEA DX,MSG3

MOV AH,9

INT 21H

MOV AH,2

MOV DL,BH

INT 21H

MOV AH,2

MOV DL,BL

INT 21H

MOV AH,4CH

INT 21H

ENDS

END START
Write an assembly program to print the Multiplication of two digits.

DATA SEGMENT

NUM1 DB ?

NUM2 DB ?

RESULT DB ?

MSG1 DB 10,13,"ENTER FIRST NUMBER TO MULTIPLY : $"

MSG2 DB 10,13,"ENTER SECOND NUMBER TO MULTIPLY : $"

MSG3 DB 10,13,"RESULT OF MULTIPLICATION IS : $"

ENDS

CODE SEGMENT

ASSUME DS:DATA CS:CODE

START:

MOV AX,DATA

MOV DS,AX

LEA DX,MSG1

MOV AH,9
INT 21H

MOV AH,1

INT 21H

SUB AL,30H

MOV NUM1,AL

LEA DX,MSG2

MOV AH,9

INT 21H

MOV AH,1

INT 21H

SUB AL,30H

MOV NUM2,AL

MUL NUM1

MOV RESULT,AL

AAM

ADD AH,30H

ADD AL,30H

MOV BX,AX

LEA DX,MSG3

MOV AH,9

INT 21H

MOV AH,2

MOV DL,BH

INT 21H

MOV AH,2

MOV DL,BL

INT 21H
MOV AH,4CH

INT 21H

ENDS

END START

Output

Write an assembly program to print the subtract of two digits.

DATA SEGMENT
Num1 DB 9FH
Num2 DB 5AH
RESULT DB 00
DATA ENDS

CODE SEGMENT
ASSUME CS:CODE,DS:DATA
START:
MOV AX,DATA
MOV DS,AX
MOV AL, Num1
MOV BL,Num2
SUB AL,BL
MOV RESULT,AL
INT 03H
CODE ENDS
END START
END
OUTPUT

Write an assembly program to print the DIVISION of two digits.

DATA SEGMENT
DATA1 DW 0F0F0H
DATA2 DW 0A0A0H
QUOTIENT DW 00
REMAINDER DW 00
DATA ENDS

CODE SEGMENT
ASSUME CS:CODE,DS:DATA
START:
MOV AX,DATA
MOV DS,AX
MOV AX,00
MOV DX,00
SUB AX,DATA1
MOV BX,DATA2
DIV BX
MOV QUOTIENT,AX
MOV REMAINDER,DX
INT 03H
CODE ENDS
END START
END

OUTPUT

You might also like