Microprocessor and Get The Result in Hexadecimal
Microprocessor and Get The Result in Hexadecimal
5 (a)
Aim: To perform (i) addition and (ii) subtraction of two 8 bit numbers using 8085
microprocessor and get the result in hexadecimal.
Program:
MOV A, M
INX H
MOV B, M
ADD B
INX H
MOV M, A
RST 5
END END
OBSERVATION:
RESULT: Thus the program to add two 8 Bit numbers was executed.
34
35
Experiment No. 5 (b)
Aim: To perform (i) addition and (ii subtraction of two 8 bit numbers using 8085
microprocessor and get the result in hexadecimal.
MOV A, M
INX H
MOV B, M
SUB B
INX H
MOV M, A
RST 5
END END
OBSERVATION:
Program:
XCHG
LHLD 3002
MVI C, 00
DAD D
JNC 200E
INR C
SHLD 3004
MOV A,C
STA 3006
RST 5
END END
OBSERVATION :
INPUT: 3000 11 H
3001 55 H
3002 1A H
3003 1C H
OUTPUT: 3004 2B H
3005 81 H
3006 00 H
RESULT: Thus the program to add two 16 Bit numbers was executed.
37
Experiment No. 7
Program:
MOV B, M
XRA A
Loop Start INX H
ADD M
DCR B
Loop End JNZ 2005
STA 3050
5
END
OBSERVATION
Program:
START LDA 2200
MOV B,A
ANI 0F
STA 3000
MOV A,B
ANI F0
RRC
RRC
RRC
RRC
STA 3001
RST 5
END
OBSERVATION:
RESULT: Thus the program to separate a byte into two nibbles was executed.
39
Experiment No. 8(ii)
Program:
RLC
RLC
RLC
RLC
INX H
ORA A
STA 3050
RST 5
END END
OBSERVATION:
RESULT: Thus the program to combine two nibbles to form a byte was executed.
39
40
Experiment No. 9
Aim: Write a program to multiply two 8 bit numbers using shift and add
method.
Program:
START LHLD 3000
XCHG
MLTPLY MOV A, D
MVI D, 00H
LXI H, 0000H
MVI B, 08H
NXTBIT RAR
JNC NOADD
DAD D
NOADD XCHG
DAD H
XCHG
DCR B
JNZ NXTBIT
SHLD 3500
RST 5
END END
OBSERVATION:
RESULT: Thus the program to arrange N numbers of arrays in ascending order has been
performed.
41
Experiment No. 10(i)
Program:
START LXI H, 2500
MOV C, M
LOOP INX H
MOV B, M
CMP B
JNC AHEAD
DCX H
MOV M, A
MOV A, B
JMP GO
AHEAD DCX H
MOV M, B
GO INX H
DCR D
JNZ LOOP
MOV M, A
DCR C
JNZ BACK
RST 5
END END
OBSERVATION:
INPUT DATA: 2500H 04H
2501 H 90H
2502 H 41 H
2503 H 20 H
2504 H 15 H
2505h -- 35H
OUTPUT DATA: 2501 H 15H
2502 H 20 H
2503 H 35 H
2504 H 41 H
2505h -- 90H
RESULT: Thus the program to arrange N numbers of arrays in ascending order has been
perform.
42
Experiment No. 10(ii)
Program:
START LXI H, 2500
MOV C, M
BACK LXI H, 2500
MOV D, M
INX H
MOV A, M
LOOP INX H
MOV B, M
CMP B
JC AHEAD
DCX H
MOV M, A
MOV A, B
JMP GO
AHEAD DCX H
MOV M, B
GO INX H
DCR D
JNZ LOOP
MOV M, A
DCR C
JNZ BACK
RST 5
END END
OBSERVATION:
INPUT DATA: 2500H Count (04H)
2501 H 90H
2502 H 41 H
2503 H 20 H
2504 H 15 H
2505h -- 35H
OUTPUT DATA:
2501 H 90H
2502 H 41 H
2503 H 35 H
2504 H 20 H
2505h -- 15H
RESULT: Thus the program to arrange N numbers of arrays in descending order has been
performed.
43
Experiment No. 11
Program:
START LXI H, 3000
MOV A, M
MOV B, A
ANI 0FH
MOV C, A
MOV A, B
ANI FOH
RRC
RRC
RRC
RRC
MOV D, A
XRA A
MVI E, 0AH
SUM ADD E
DCR D
JNZ SUM
ADD C
STA 3500
END END
OBSERVATION:
RESULT: Thus the program to convert a BCD number to Binary Number executed
44
Experiment No. 12
Program:
START LXI SP, 2200
LXI H, 3000
MOV A, M
LXI H, 3500
MVI B, 64H
CALL BINBCD
MVI B, 0AH
CALL BINBCD
MOV M, A
RST 5
END END
SUBROUTINE
BINBCD MVI M, FFH
NXTBUF INR M
SUB B
JNC NXTBUF
ADD B
INX H
RET
END END
OBSERVATION:
INPUT DATA: 3000H 30 H
OUTPUT DATA: 3500 H 00 H
3501 H 04 H
3502 H 08 H
RESULT: Thus the program to convert a Binary Number to BCD Number executed.
45
Experiment No. 13(i)
Program:
MVI B, 15H
ADD B
DAA
STA 3000
RST 5
END END
OBSERVATION:
Program:
START MVI B, 20H
MVI C, 15H
MVI A, 99H
SUB C
INR A
ADD B
DAA
STA 3000
RST 5
END END
OBSERVATION:
ARYAN MITTAL
2K14/EC/046