You are on page 1of 5

Microprocessors and Microcontroller Lab (EC3P004)

Name : Sidharth A Narayanan

Roll No : 20EC01016

Experiment No : 3

Date : 25th Aug 2022

Code to load data

LXI H,F000H
MVI B,14
LOOP: MOV M,B
INX H F000 14 F100
F101
14
13
DCR B F001
F002
13
12 F102 12
JNZ LOOP F003 11 F103
F104
11
10
F004 10
F005 0F F105 0F
Solution 1(a): F006 0E F106 0E
F007 0D F107 0D
Transferring data F008 0C
After Data F108 0C
Transfer
F009 0B F109 0B

LXI H,F000H F00A


F00B
0A
9
F10A
F10B
0A
9
LXI D,F100H F00C 8 F10C 8

MVI B,14 F00D


F00E
7
6
F10D
F10E
7
6
LOOP2: MOV A,M F00F 5 F10F 5

INX H F010
F011
4
3
F110
F111
4
3
STAX D F012 2 F112 2

INX D F013 1 F113 1

DCR B
JNZ LOOP2
HLT

F010 14


F011
F012
13
12
For part (b) copying values in the descending F013 11
order of address to prevent loss of data
F014 10
F015 0F
F016 0E
Solution 1(b): F017 0D
F018 0C
LXI H,F013H F019 0B

LXI D,F023H F01A


F01B
0A
9
MVI B,14 F01C 8

LOOP2: MOV A,M F01D


F01E
7
6
DCX H F01F 5

STAX D F020
F021
4
3
DCX D F022 2

DCR B F023 1

JNZ LOOP2
HLT

Data loaded in memory (could be done without code)

LXI H,F000H
MVI M,35H
INX H
MVI M,47H

Solution 2: Finding sum of BCD numbers

LXI H,F000H
MOV A,M Data in memory after execution
INX H
MOV B,M
INX H
ADD B
DAA
MOV M,A
HLT

Look up table loaded through code (Code applicable only till 81 )


MVI B,00H
MVI C,01H
MVI E,09H DAA is used so the square roots of
MVI H,F0H values like 8 and 9 are stored in F064
MVI A,00H and F081 instead of the correspoding
hexadecimally accurate F040 and
LOOP: MOV L,A F051. This enables the user to provide
MOV M,B the input in BCD
MOV D,C
LOOP2: INR A
DAA
DCR D
JNZ LOOP2
INR B
INR C
INR C
DCR E

JNZ LOOP
MOV L,A
MOV M,B

Solution 3: Using Lookup table to find √

LXI H,9000H
MVI M,64H

MOV B,M
INR B

LXI H,EFFH

LOOP3: INX H
DCR B Data in memory after execution
JNZ LOOP3
MOV A,M
STA 9001H
HLT

Data loaded in memory (could be done without code)

LXI H,F000H
MVI M,23H
INX H

MVI M,AFH
INX H
MVI M,58H
INX H
MVI M,52

Solution 4: Code to sum two 8-bit


numbers (no carry)

LXI H,F003H
LDA F001H
ADD M
STA F005H
LDA F000H
JNC SKIPINR
INR A Data in memory after execution
SKIPINR: DCX
H
ADD M
STA F004H
HLT

You might also like