Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
100% found this document useful (1 vote)
1K views

Gtu Micro Processor Practical

This document contains details of 8 microprocessor and interfacing practical assignments completed by the student. It includes the problem statements, assembly language code solutions, and output for each problem. The problems cover topics such as storing and exchanging data in memory locations, adding decimal numbers, comparing register values before and after instructions, and finding 1's and 2's complement of numbers. The document is signed by the student and includes their enrollment number, subject code, name of the institution and department.

Uploaded by

baba
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
100% found this document useful (1 vote)
1K views

Gtu Micro Processor Practical

This document contains details of 8 microprocessor and interfacing practical assignments completed by the student. It includes the problem statements, assembly language code solutions, and output for each problem. The problems cover topics such as storing and exchanging data in memory locations, adding decimal numbers, comparing register values before and after instructions, and finding 1's and 2's complement of numbers. The document is signed by the student and includes their enrollment number, subject code, name of the institution and department.

Uploaded by

baba
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 79

SARVAJANIK COLLEGE OF ENGINEERING

AND TECHNOLOGY
Department of Computer Engineering

BE III, Semester VI, Shift I


Academic Year : 2020-21(EVEN)
Subject : Microprocessor and Interfacing(3160712)

Name: Naseebullah Andar


Enrollment No: 150420107067

B.E III Semester VI


Microprocessor and Interfacing(3160712)
Index
Sr. Problem Statement Date Page Sign
No No.
.
1. 1. A. Store 8-bit data in memory B. 25/12/21
Store 16-bit data in memory

2. Exchange the Content of memory


location 1000H and 2000H.

3. Write a program to add 2 decimal


numbers. Numbers are -85 and 25.

4. Exchange data of 2 Register.

5. Exchange 16-bit data

6. Check result after executing INR


B, INR C, INX B if B=FFH, C=FFH.

7. Check result after executing DCR


B, DCR C,DCX B if B=00H,C=00H.

2. 1. Find 1's complement and 2's 1/02/21


complement of a given number.

2. Add, Subtract 2 16 bit numbers


stored at C000 and C002. Store result
from C005 onwards.

3. Shift 8-bit data to 4 bit right.


Assume data in C register.

4. Shift 16-bit data to 1 bit right.


Assume data in BC register.

5. Shift 16-bit data to 1 bit left.


Assume data in BC register.

3. 1. Write 8085 data to pack the 8/02/21


unpacked BCD number present in
memory and store the result in
memory. Assume C001 and C002
have two unpacked BCD number.
Store result at C003.

2. Write 8085 data to unpack the


packed BCD number present in
memory and store the result in
memory. Assume C001 has unpacked
BCD number. Store result at C002
and C003.

3. Find greater number between


two numbers. Assume numbers are in
memory and greater number as a
result stored in memory location.

4. Find smaller number between


two numbers. Assume numbers are in
memory and smaller number as a
result stored in memory location.

4. 1. Check whether given no is even or 15/02/21


odd if number is odd, 01 should be
stored in memory location otherwise
02 should be stored.

2. Find Even or Odd numbers in


given 2 number. Assume numbers are
stored in C001 and C002.If numbers
are Odd store in C003 and C005. If
numbers are even store in C004 and
C006.

3. Copy 16 data-bytes from location


starting from C500 onwards to
location starting from C600 onwards.

4. Copy 16 data-bytes from


location starting from C500
onwards to location starting
from C600 onwards in
reverse order
5. 1. Write an 8085 assembly level 22/02/21
program to calculate sum of ‘N’
numbers where ‘N’ is stored at a
memory location

2. 16 data bytes are stored at


memory locations starting from
C500H. Write an 8085 assembly
level program to copy these data
bytes

A. In the same order but starting


from memory location C507H.

B. In the reverse order but starting


from memory location C500H.

3. A block of 10 data bytes is present


in the memory. Write an 8085
assembly level program to count the
negative numbers from the block.

6. 1. Write an 8085 assembly level 15/03/21


program that inserts a data byte in a
given block of data. The block starts
from location C300H onwards. It
consists of 10 data bytes. The data
byte to be inserted is stored at C200H
and the position where it is to be
inserted is stored at C201.

2. Write an 8085 assembly level


program that deletes a data byte in a
given block of data. The block starts
from location C300H onwards. It
consists of 10 data bytes. The
position of data byte to be deleted is
stored at C201H.

3. Write an 8085 assembly level


program that replaces a data byte in a
given block of data. The block starts
from location C300H onwards. It
consists of 10 data bytes. The data
byte to be replaced is stored at
C200H and the position where it is to
be replaced is stored at C201.

7. 1. Write an 8085 assembly level 22/03/21


program to divide a 16 bit number by
an 8-bit number. Store the remainder
and quotient in memory.

2. A block of 10 data bytes is


present in the memory. Write an 8085
assembly level program to find out
the largest of given numbers from the
block.

3. a) Write an 8085 assembly level


program to calculate the sum of series
of ‘N’ even consecutive numbers

b) Write an 8085 assembly level


program to calculate the sum of series
‘N’ of odd consecutive numbers.

8. 1)Write an 8085 assembly level 31/03/21


program to arrange 10 data bytes in
ascending order and store the
resultant block at the same memory
location.

2)Write an 8085 assembly level


program to search a byte in a block of
10 data bytes.

3). Write an 8085 assembly level


program to count a number of
positive, negative, and zeros numbers
in a block of 16 data bytes. Store the
result in the memory.

4). Write an 8085 assembly level


program to add each element of an
array of size 10 to another array.
Subject Code: 3160712 Subject Name: MI Date: 25/12/21
Enrollment No:150420107067 Name: Naseebullah Andar

PRACTICAL:-1
1. A. Store 8-bit data in memory
B. Store 16-bit data in memory

A. Store 8-bit data in memory


 MVI A,17H
STA C010H
HLT

OUTPUT:-

 LXI H,C010
MVI M
HLT

OUTPUT:-

 MVI A,17H
LXI B,C010H
STAX B
HLT

SCET/CO/2020_21/ EVEN/SHIFT_I/SEM_VI Page | 1


Subject Code: 3160712 Subject Name: MI Date: 25/12/21
Enrollment No:150420107067 Name: Naseebullah Andar

OUTPUT:-

B. Store 16-bit data in memory


 LXI H,5453
SHLD C020
HLT
OUTPUT:-

 LXI B,4546
LXI H,C010
MOV M,B
INX H
MOV M,C
HLT
OUTPUT:-

SCET/CO/2020_21/ EVEN/SHIFT_I/SEM_VI Page | 2


Subject Code: 3160712 Subject Name: MI Date: 25/12/21
Enrollment No:150420107067 Name: Naseebullah Andar

 LXI B,5453
MOV A,B
STA C010
MOV A,C
STA C011
HLT

OUTPUT:-

2. Exchange the Content of memory location 1000H and 2000H.


 With using Registers:-
LXI H,C010H
MOV A,M
LXI H,C020H
MOV B,M
MOV M,A
LXI H,C010H
MOV M,B
HLT

OUTPUT:-

SCET/CO/2020_21/ EVEN/SHIFT_I/SEM_VI Page | 3


Subject Code: 3160712 Subject Name: MI Date: 25/12/21
Enrollment No:150420107067 Name: Naseebullah Andar

 Without using Register


LDA C020H
STA C031H
LDA C030H
STA C020H
LDA C031H
STA C030H
HLT
OUTPUT:-

3. Write a program to add 2 decimal numbers. Numbers are -85 and 25.
MVI A,85H
MVI B,25H
CMA
INR A
ADD B
HLT

OUTPUT:-

SCET/CO/2020_21/ EVEN/SHIFT_I/SEM_VI Page | 4


Subject Code: 3160712 Subject Name: MI Date: 25/12/21
Enrollment No:150420107067 Name: Naseebullah Andar

4. Exchange data of 2 Register.


MVI A,30
MVI B,20
MOV D,B
MOV B,A
MOV A,D
HLT

OUTPUT:-

5. Exchange 16-bit data (case I: Assume data in memory Case II: Data in
registers)
 CASE1:-
LHLD C010
XCHG
LHLD C020
SHLD C010
XCHG
SHLD C020
HLT

OUTPUT:-
Before:-

After:-

SCET/CO/2020_21/ EVEN/SHIFT_I/SEM_VI Page | 5


Subject Code: 3160712 Subject Name: MI Date: 25/12/21
Enrollment No:150420107067 Name: Naseebullah Andar

 CASE 2:-
LXI H,C030H
LXI D,C020H
XCHG
HLT
OUTPUT:-

6. Check result after executing INR B, INR C, INX B if B=FFH, C=FFH.


MVI B,FFH
INR B
MOV A,B
LXI B,FFFFH
INX B
INR C
HLT
OUTPUT:-

7. Check result after executing DCR B, DCR C,DCX B if B=00H,C=00H.


MVI B,00H
DCR B
MOV A,B
LXI B,C000
DCX B
DCR C
HLT

SCET/CO/2020_21/ EVEN/SHIFT_I/SEM_VI Page | 6


Subject Code: 3160712 Subject Name: MI Date: 25/12/21
Enrollment No:150420107067 Name: Naseebullah Andar

OUTPUT:-

SCET/CO/2020_21/ EVEN/SHIFT_I/SEM_VI Page | 7


Subject Code: 3160712 Subject Name: MI Date: 8/02/21
Enrollment No:150420107067 Name: Naseebullah Andar

PRACTICAL:-2
1. Find 1's complement and 2's complement of a given number.

 1’s complement:
o Input:

MVI A,FFH

MOV B,A

CMA

HLT

o Output:

 2’s complement:
o Input:

MVI A,FFH

MOV B,A

CMA

INR A

HLT

o Output:

SCET/CO/2020_21/ EVEN/SHIFT_I/SEM_VI Page | 8


Subject Code: 3160712 Subject Name: MI Date: 8/02/21
Enrollment No:150420107067 Name: Naseebullah Andar

2. Add, Subtract 2 16 bit numbers stored at C000 and C002. Store result
from C005 onwards.

 Addition of two 16 bit numbers stored at C020 and C030 memory location:
o Input:

LHLD C020H

XCHG

LHLD C030H

DAD D

SHLD C040H

HLT

o Output:

 Subtraction of two 16 bit numbers stored at C020 and C030 memory location:
o Input:

LHLD C020H

XCHG

LHLD C030H

MOV A,E

SUB L

MOV L,A

MOV A,D

SCET/CO/2020_21/ EVEN/SHIFT_I/SEM_VI Page | 9


Subject Code: 3160712 Subject Name: MI Date: 8/02/21
Enrollment No:150420107067 Name: Naseebullah Andar

SBB H

MOV H,A

SHLD C040H

HLT

o Output:

SCET/CO/2020_21/ EVEN/SHIFT_I/SEM_VI Page | 10


Subject Code: 3160712 Subject Name: MI Date: 8/02/21
Enrollment No:150420107067 Name: Naseebullah Andar

3. Shift 8-bit data to 4 bit right. Assume data in C register.

 Without carry flag bit (RRC):


o Input:

MVI C,11H

MOV A,C

RRC

RRC

RRC

RRC

HLT

o Output:

 With carry flag bit (RAR):


o Input:

MVI C,11H

MOV A,C

RAR

RAR

RAR

RAR

HLT

o Output:

SCET/CO/2020_21/ EVEN/SHIFT_I/SEM_VI Page | 11


Subject Code: 3160712 Subject Name: MI Date: 8/02/21
Enrollment No:150420107067 Name: Naseebullah Andar

SCET/CO/2020_21/ EVEN/SHIFT_I/SEM_VI Page | 12


Subject Code: 3160712 Subject Name: MI Date: 8/02/21
Enrollment No:150420107067 Name: Naseebullah Andar

4. Shift 16-bit data to 1 bit right. Assume data in BC register.

o Input:

MVI B,11H

MVI C,FFH

MOV A,B

RAR

MOV B,A

MOV A,C

RAR

MOV C,A

HLT

o Output:

SCET/CO/2020_21/ EVEN/SHIFT_I/SEM_VI Page | 13


Subject Code: 3160712 Subject Name: MI Date: 8/02/21
Enrollment No:150420107067 Name: Naseebullah Andar

5. Shift 16-bit data to 1 bit left. Assume data in BC register.

o Input:

MVI B,11H

MVI C,FFH

MOV A,C

RAL

MOV C,A

MOV A,B

RAL

MOV B,A

HLT

o Output:

SCET/CO/2020_21/ EVEN/SHIFT_I/SEM_VI Page | 14


Subject Code: 3160712 Subject Name: MI Date: 8/02/21
Enrollment No:150420107067 Name: Naseebullah Andar

PRACTICAL 3

1: Write 8085 data to pack the unpacked BCD number present in memory
and store the result in memory. Assume C001 and C002 have two
unpacked BCD number. Store result at C003.
Code:
LXI H,C020H
MVI M,02H
MOV A,M
INX H
MVI M,09H
RAL
RAL
RAL
RAL
ADD M INX H
MOV M,A
HLT

Output:

SCET/CO/2020_21/ EVEN/SHIFT_I/SEM_VI Page | 15


Subject Code: 3160712 Subject Name: MI Date: 8/02/21
Enrollment No:150420107067 Name: Naseebullah Andar

SCET/CO/2020_21/ EVEN/SHIFT_I/SEM_VI Page | 16


Subject Code: 3160712 Subject Name: MI Date: 8/02/21
Enrollment No:150420107067 Name: Naseebullah Andar

2: Write 8085 data to unpack the packed BCD number present in memory
and store the result in memory. Assume C001 has unpacked BCD number.
Store result at C002 and C003.
Code:
LXI H,C020H
MVI M,13H
MOV A,M
MOV B,M
RAR
RAR
RAR
RAR
ANI 0FH
INX H
MOV M,A
MOV A,B
ADI F0H
INX H
MOV M,A
HLT
Output:

SCET/CO/2020_21/ EVEN/SHIFT_I/SEM_VI Page | 17


Subject Code: 3160712 Subject Name: MI Date: 8/02/21
Enrollment No:150420107067 Name: Naseebullah Andar

3: Find greater number between two numbers. Assume numbers are in


memory and greater number as a result stored in memory location.
Case 1: Accumulator content is lesser Code:
MVI A,49H
STA C050H
MVI A,18H
STA C051H
LDA C050
MOV B,A
LDA C051
CMP B
JNC C016H
MOV A,B
STA C060H
HLT
Output:

SCET/CO/2020_21/ EVEN/SHIFT_I/SEM_VI Page | 18


Subject Code: 3160712 Subject Name: MI Date: 8/02/21
Enrollment No:150420107067 Name: Naseebullah Andar

Case 2: Accumulator content is greater Code:


MVI A,18H
STA C050H
MVI A,49H
STA C051H
LDA C050
MOV B,A
LDA C051
CMP B
JNC C016H
MOV A,B
STA C060H
HLT
Output:

SCET/CO/2020_21/ EVEN/SHIFT_I/SEM_VI Page | 19


Subject Code: 3160712 Subject Name: MI Date: 8/02/21
Enrollment No:150420107067 Name: Naseebullah Andar

4: Find smaller number between two numbers. Assume numbers are in


memory and smaller number as a result stored in memory location. Code:
MVI A,18H
STA C050H
MVI A,49H
STA C051H
LDA C050
MOV B,A
LDA C051
CMP B
JC C016H
MOV A,B
STA C060H
HLT
Output:

SCET/CO/2020_21/ EVEN/SHIFT_I/SEM_VI Page | 20


Subject Code: 3160712 Subject Name: MI Date:15/02/21
Enrollment No:150420107067 Name: Naseebullah Andar

PRACTICAL –4

PROBLEM STATEMENT –
1) CHECK WHETHER GIVEN NO IS EVEN OR ODD IF NUMBER
IS ODD, 01 SHOULD BE STORED IN MEMEORY LOCATION
OTHERWISE 02 SHOULD BE STORED.

MVI
A,50H
STA
CO50H
RRC
MVI
A,02H
JNC
C00DH
MVI
A,01H
STA
C061H
HLT

SCET/CO/2020_21/ EVEN/SHIFT_I/SEM_VI Page | 21


Subject Code: 3160712 Subject Name: MI Date:15/02/21
Enrollment No:150420107067 Name: Naseebullah Andar

SCET/CO/2020_21/ EVEN/SHIFT_I/SEM_VI Page | 22


Subect Code: 3160712 Subject Name: MI Date: 15/02/21
Enrollment No:150420107067 Name: Naseebullah Andar

2) FIND EVEN OR ODD NUMBERS IN GIVEN 2 NUMBER. ASSUME NUMBERS


ARE STORED IN C001 AND C002. IF NUMBERS AND ODD STORED IN C003
AND C005. IF NUMBER ARE EVEN STORED IN C004 AND C006.

LXI
H,C070
H MOV
A,M ANI
01H
JZ
EVEN:
MOV
A,M
STA
C073H
JMP
ODD
EVEN:
MOV A,M
STA C074H
ODD: INX
H MOV
A,M
ANI
01H
JZ
EVEN
1

SCET/CO/2020_21/ EVEN/SHIFT_I/SEM_VI Page | 23


Subect Code: 3160712 Subject Name: MI Date: 15/02/21
Enrollment No:150420107067 Name: Naseebullah Andar

MOV
A,M
STA
C075H
JMP
ODD1
EVEN1:
MOV A,M
STA C076H
ODD1:HLT
OUTPUT –

SCET/CO/2020_21/ EVEN/SHIFT_I/SEM_VI Page | 24


Subect Code: 3160712 Subject Name: MI Date: 15/02/21
Enrollment No:150420107067 Name: Naseebullah Andar

3) COPY 16 DATA-BYTES FROM LOCATION STARTING FROM C500


ONWARDS TO LOCATION STARTING FROM C600 ONWARDS.

LXI
H,C070H
LXI
D,C080H
MVI C,10H
BACK:MO
V A,M
STAX D
INX H
INX D
DCR
C JNZ
BACK
HLT
OUTPUT –

SCET/CO/2020_21/ EVEN/SHIFT_I/SEM_VI Page | 25


Subect Code: 3160712 Subject Name: MI Date: 15/02/21
Enrollment No:150420107067 Name: Naseebullah Andar

SCET/CO/2020_21/ EVEN/SHIFT_I/SEM_VI Page | 26


Subject Code: 3160712 Subject Name: MI Date: 15/02/21
Enrollment No:150420107067 Name: Naseebullah Andar

4) COPY 16 DATA-BYTES FROM LOCATION STARTING FROM C500


ONWARDS TO LOCATION STARTING FROM C600 ONWARDS IN
REVERSE ORDER
LXI
H,C070
H LXI
D,000FH
DAD D
MVI
C,10H
LXI
D,C080H
BACK:MO
V A,M
STAX D
INX D
DCX
H
DCR
C JNZ
BACK
HLT

SCET/CO/2020_21/ EVEN/SHIFT_I/SEM_VI Page | 27


Subject Code: 3160712 Subject Name: MI Date: 15/02/21
Enrollment No:150420107067 Name: Naseebullah Andar

OUTPUT –

SCET/CO/2020_21/ EVEN/SHIFT_I/SEM_VI Page | 28


Subject Code: 3160712 Subject Name: MI Date:22/02/21
Enrollment No:150420107067 Name: Naseebullah Andar

PRACTICAL - 5
PROBLEM STATEMENT –
1) WRITE AN 8085 ASSEMBLY LEVEL PROGRAM TO
CALCULATE SUM OF ‘N’ NUMBERS WHERE ‘N’ IS STORED
AT A MEMORYLOCATION.

OUTPUT -

SCET/CO/2020_21/ EVEN/SHIFT_I/SEM_VI Page | 29


Subject Code: 3160712 Subject Name: MI Date:22/02/21
Enrollment No:150420107067 Name: Naseebullah Andar

B) 16 DATA BYTES ARE STORED AT MEMORY LOCATIONS


STARTING FROM C500H. WRITE AN 8085 ASSEMBLY LEVEL
PROGRAM TO COPYTHESE DATA BYTES

A. IN THE SAME ORDER BUT STARTING FROM MEMORY


LOCATIONC507H.
B. IN THE REVERSE ORDER BUT STARTING FROM
MEMORYLOCATION C500H.

A. IN THE SAME ORDER BUT STARTING FROM MEMORY


LOCATIONC507H.

OUTPUT -

SCET/CO/2020_21/ EVEN/SHIFT_I/SEM_VI Page | 30


Subject Code: 3160712 Subject Name: MI Date:22/02/21
Enrollment No:150420107067 Name: Naseebullah Andar

B. IN THE REVERSE ORDER BUT STARTING FROM


MEMORYLOCATION C500H.

OUTPUT -

SCET/CO/2020_21/ EVEN/SHIFT_I/SEM_VI Page | 31


Subject Code: 3160712 Subject Name: MI Date:22/02/21
Enrollment No:150420107067 Name: Naseebullah Andar

3) A BLOCK OF 10 DATA BYTES IS PRESENT IN THE MEMORY.


WRITEAN 8085 ASSEMBLY LEVEL PROGRAM TO COUNT THE
NEGATIVE NUMBERS FROM THE BLOCK.

LXI
H,C020H
MVI
C,0AH
MVI
B,00H

BACK: MOV A,M


ANI
80H
JZ
SKIP
INR
B

SKIP: INX H
DCR C
JNZ
BACK
MOV
A,B

STA C040H

HLT

SCET/CO/2020_21/ EVEN/SHIFT_I/SEM_VI Page | 32


Subject Code: 3160712 Subject Name: MI Date:22/02/21
Enrollment No:150420107067 Name: Naseebullah Andar

OUTPUT –

SCET/CO/2020_21/ EVEN/SHIFT_I/SEM_VI Page | 33


Subject Code: 3160712 Subject Name: MI Date:22/02/21
Enrollment No:150420107067 Name: Naseebullah Andar

PRACTICAL - 6
PROBLEM STATEMENT –
1) WITE AN 8085 ASSEMBLY LEVEL PROGRAM THAT INSERT A DATA
BYTE IN A GIVEN BLOCK OF DATA. THE BLOCK STARTS FROM
LOCATION C300H ONWORDS. IT CONSISTS OF 10 DATA BYTE TO
BE INSERTED IS STORED AT C200H AND THE POSITION WHERE IT
IS TO BE INSERTED IS STORED AT C201.
MVI H,0A
LXI B,C030H
LXI D,C040H
BACK:
LDAX B
STAX D
INX B
INX D
DCR H
JNZ BACK
HLT

OUTPUT-

SCET/CO/2020_21/ EVEN/SHIFT_I/SEM_VI Page | 34


Subject Code: 3160712 Subject Name: MI Date:22/02/21
Enrollment No:150420107067 Name: Naseebullah Andar

SCET/CO/2020_21/ EVEN/SHIFT_I/SEM_VI Page | 35


Subject Code: 3160712 Subject Name: MI Date:22/02/21
Enrollment No:150420107067 Name: Naseebullah Andar

2) WRITE AN 8085ASSEMBLY LEVEL PROGRAM THAT DELETE A


DATA BYTE IN A GIVEN BLOCK DATA. THE BLOCK START FROM
LOCATION C300H ONWARDS. IT CONSISTS OF 10 DATA BYTES.
THE POSITION OF DATA BYTE TO BE DELETED IS STORED AT
C201H.
LXI D,C040H
LXI H,C050H
MVI C,0AH
MOV A,M
MOV B,A
MOV A,C
SUB B
MOV C,A
DCR B
LOOP :
INX D
DCR B
JNZ LOOP
MOV H,D
MOV L,E
LOOP1:
INX D
MOV M,A
INX H
DCR
JNZ LOOP1
HLT

SCET/CO/2020_21/ EVEN/SHIFT_I/SEM_VI Page | 36


Subject Code: 3160712 Subject Name: MI Date:22/02/21
Enrollment No:150420107067 Name: Naseebullah Andar

SCET/CO/2020_21/ EVEN/SHIFT_I/SEM_VI Page | 37


Subject Code: 3160712 Subject Name: MI Date:22/02/21
Enrollment No:150420107067 Name: Naseebullah Andar

3) WRITE AN 8085 ASSEMBLY LEVEL PROGRAM THAT REPLACES A


DATA BYTE IN A GIVEN BLOCK OF DATA. THE BLOCK STARTS
FROM LOCATION C300H ONWARDS. IT CONSISTS OF 10 DATA
BYTES. THE DATA BYTE TO BE REPLACED IS STORED AT C200H
AND THE POSITION WHERE IT IS TO BE REPLACED IS STORED AT
C201.
LXI D,C030H
LXI H,C040H
MVI C,0AH
MOV A,H
MOV B,A
MOV A,C
SUB B
MOV C,A
DCR B
LOOP:
INX D
DCR B
JNZ LOOP
DCX H
MOV A,M
STAX D
HLT

OUTPUT -

SCET/CO/2020_21/ EVEN/SHIFT_I/SEM_VI Page | 38


Subject Code: 3160712 Subject Name: MI Date:22/02/21
Enrollment No:150420107067 Name: Naseebullah Andar

SCET/CO/2020_21/ EVEN/SHIFT_I/SEM_VI Page | 39


Subject Code: 3160712 Subject Name: MI Date:22/03/21
Enrollment No:150420107067 Name: Naseebullah Andar

PRACTICAL - 7
PROBLEM STATEMENT –
1) WRITE AN 8085 ASSEMBLY LEVEL PROGRAM TO DIVIDE A 16
BITNUMBER BY AN 8-BIT NUMBER. STORE THE REMAINDER
AND QUOTIENT IN MEMORY.
PROGRAM –
MVI
E,00
MVI
B,04H
MVI
A,0FH
BACK :
CMP B
JC
SKIP
SUB B
INR E
JMP
BACK
SKIP :
STA
C100H
MOV A,E
STA
C101H
HLT

SCET/CO/2020_21/ EVEN/SHIFT_I/SEM_VI Page | 40


Subject Code: 3160712 Subject Name: MI Date:22/03/21
Enrollment No:150420107067 Name: Naseebullah Andar
OUTPUT -

SCET/CO/2020_21/ EVEN/SHIFT_I/SEM_VI Page | 41


Subject Code: 3160712 Subject Name: MI Date:22/03/21
Enrollment No:150420107067 Name: Naseebullah Andar

2) A BLOCK OF 10 DATA BYTES IS PRESENT IN THE MEMORY.


WRITE AN 8085 ASSEMBLY LEVEL PROGRAM TO FIND OUT
THELARGEST OF GIVEN NUMBER FROM THE BLOCK.
MVI
C,0AH
MVI
A,00H LXI
H,C030H
BACK:
CMP M
JNC
SKIP
MOV
A,M
SKIP :
INX H
DCR C
JNZ BACK
STA
C060H
HLT

OUTPUT

SCET/CO/2020_21/ EVEN/SHIFT_I/SEM_VI Page | 42


Subject Code: 3160712 Subject Name: MI Date:22/03/21
Enrollment No:150420107067 Name: Naseebullah Andar
AFTER -

SCET/CO/2020_21/ EVEN/SHIFT_I/SEM_VI Page | 43


Subject Code: 3160712 Subject Name: MI Date:22/03/21
Enrollment No:150420107067 Name: Naseebullah Andar
3) A) WRITE AN 8085 ASSEMBLY LEVEL PROGRAM TO
CALCULATE THE SUM OF SERIES OF ‘N’ EVEN
CONSECUTIVE NUMBER.
B) WRITE AN 8085 ASSEMBLY LEVEL PROGRAM TO
CALCULATE THE SUM SERIES ‘N’OF ODD CONSECUTIVE
NUMBER.
A) WRITE AN 8085 ASSEMBLY LEVEL PROGRAM TO CALCULATE THE SUM
OFSERIES OF ‘N’ EVEN CONSECUTIVE NUMBER.

MVI
C,05H
MVI
B,00H LXI
H,C030H
BACK:
MOV
A,M
ANI
01H
JNZ
SKIP
MOV
A,B
ADD M
MOV
B,A
SKIP :
INX H
DCR C

SCET/CO/2020_21/ EVEN/SHIFT_I/SEM_VI Page | 44


Subject Code: 3160712 Subject Name: MI Date:22/03/21
Enrollment No:150420107067 Name: Naseebullah Andar
JNZ BACK
STA C060H
HLT

OUTPUT
BEFORE

SCET/CO/2020_21/ EVEN/SHIFT_I/SEM_VI Page | 45


Subject Code: 3160712 Subject Name: MI Date:22/03/21
Enrollment No:150420107067 Name: Naseebullah Andar
AFTER –

SCET/CO/2020_21/ EVEN/SHIFT_I/SEM_VI Page | 46


Subject Code: 3160712 Subject Name: MI Date:22/03/21
Enrollment No:150420107067 Name: Naseebullah Andar
B) WRITE AN 8085 ASSEMBLY LEVEL PROGRAM TO CALCULATE THE
SUMSERIES ‘N’OF ODD CONSECUTIVE NUMBER.

MVI C,05H
MVI B,00H
LXI
H,C030H
BACK:
MOV
A,M ANI
01H JZ
SKIP
MOV
A,B
SKIP:
INX H
DCR C
JNZ BACK
STA
C060H
HLT

SCET/CO/2020_21/ EVEN/SHIFT_I/SEM_VI Page | 47


Subject Code: 3160712 Subject Name: MI Date:22/03/21
Enrollment No:150420107067 Name: Naseebullah Andar
OUTPUT
BEFORE :

SCET/CO/2020_21/ EVEN/SHIFT_I/SEM_VI Page | 48


Subject Code: 3160712 Subject Name: MI Date:22/03/21
Enrollment No:150420107067 Name: Naseebullah Andar

AFTER -

SCET/CO/2020_21/ EVEN/SHIFT_I/SEM_VI Page | 49


Subject Code: 3160712 Subject Name: MI Date: 31/03/21
Enrollment No:150420107067 Name: Naseebullah Andar

PRACTICAL – 8

PROBLEM STATEMENT –

1. Write an 8085 assembly level program to arrange 10 data bytes in an


ascending order and store the resultant block at the same memory
location.
Program:
START: MVI
D,00H MVI
C,0AH
DCR C
LXI H,C100H
CHECK:
MOV A,M
INX H
CMP
M JC
NEXT
MOV
B,M
MOV
M,A
DCX H
MOV
M,B
INX H
MVI
D,01H
NEXT:

SCET/CO/2020_21/ EVEN/SHIFT_I/SEM_VI Page | 50


Subject Code: 3160712 Subject Name: MI Date: 31/03/21
Enrollment No:150420107067 Name: Naseebullah Andar

DCR C
JNZ
CHECK
MOV A,D
RAR
JC
START
HLT
Input:

Output:

SCET/CO/2020_21/ EVEN/SHIFT_I/SEM_VI Page | 51


Subject Code: 3160712 Subject Name: MI Date: 31/03/21
Enrollment No:150420107067 Name: Naseebullah Andar

2. Write an 8085 assembly level program to search a byte in a block of 10 data


bytes.
Program:

LXI
H,C110H
MOV
B,M LXI
H,C100H
MOV
C,M
BACK:
INX H
MOV
A,M
CMP B
JNZ
NEXT
MOV
A,L STA
C120H
HLT
NEXT: MVI
A,FFH STA
C120H
DCR C
JNZ
BACK
HLT
SCET/CO/2020_21/ EVEN/SHIFT_I/SEM_VI Page | 52
Subject Code: 3160712 Subject Name: MI Date: 31/03/21
Enrollment No:150420107067 Name: Naseebullah Andar

Input:

Output

SCET/CO/2020_21/ EVEN/SHIFT_I/SEM_VI Page | 53


Subject Code: 3160712 Subject Name: MI Date: 31/03/21
Enrollment No:150420107067 Name: Naseebullah Andar

3. Write an 8085 assembly level program to count number of positive, negative and
zeros numbers in a block of 16 data bytes. Store the result in the memory.
Program:
LXI
H,C100H
MVI
C,00H
MVI
B,00H
MVI
E,00H
MVI
D,00H
BACK:
MOV A,M
CPI 00H
JZ
ZERO
ANI
80H
JNZ
NEG
INR D
JMP
NEXT
ZERO:
INR E
JMP
SCET/CO/2020_21/ EVEN/SHIFT_I/SEM_VI Page | 54
Subject Code: 3160712 Subject Name: MI Date: 31/03/21
Enrollment No:150420107067 Name: Naseebullah Andar

NEXT
NEG:
INR B
NEXT:
INX H
INR C
MOV
A,C
CPI
0AH
JNZ
BACK
LXI
H,C110H
MOV
M,D INX
H
MOV M,B

INX H
MOV
M,E
HLT

SCET/CO/2020_21/ EVEN/SHIFT_I/SEM_VI Page | 55


Subject Code: 3160712 Subject Name: MI Date: 31/03/21
Enrollment No:150420107067 Name: Naseebullah Andar

Output:

SCET/CO/2020_21/ EVEN/SHIFT_I/SEM_VI Page | 56


Subject Code: 3160712 Subject Name: MI Date: 31/03/21
Enrollment No:150420107067 Name: Naseebullah Andar

4. Write an 8085 assembly level program to add each element of an array of size 10
to another array.
Program:
LXI
H,C100H
LXI
B,C110H
LXI
D,C120H
BACK:
LDAX B
ADD M
STAX
D INX
H INX
B INX
D
MOV
A,L
CPI
0AH
JNZ
BACK
HLT

SCET/CO/2020_21/ EVEN/SHIFT_I/SEM_VI Page | 57


Subject Code: 3160712 Subject Name: MI Date: 31/03/21
Enrollment No:150420107067 Name: Naseebullah Andar

Output:

SCET/CO/2020_21/ EVEN/SHIFT_I/SEM_VI Page | 58


Subject Code: 3160712 Subject Name: MI Date: 05/03/21
Enrollment No:150420107067 Name: Naseebullah Andar

PRACTICAL - 9
PROBLEM STATEMENT –
1) WRITE AN 8085 ASSEMBLY LEVEL PROGRAM TO FIND THE
FACTORIAL OF A GIVEN NUMBER AND STORE THE RESULT IN
THE MEMORY.
LXI H,C100H
MOV B,M
MOV A,B
CPI 01H
JZ DONE
MOV C,B
FACTORIAL:
CALL MULTIPLY
DCR B
MOV A,B
CPI 01H
JNZ FACTORIAL
MOV A,C
DONE:
STA C110H
HLT
MULTIPLY:
MOV D,B
MOV A,C
DCR D
DCR D
JZ BACK
MUL:
ADC C
DCR D

SCET/CO/2020_21/ EVEN/SHIFT_I/SEM_VI Page | 59


Subject Code: 3160712 Subject Name: MI Date: 05/03/21
Enrollment No:150420107067 Name: Naseebullah Andar
JNZ MUL
MOV C,A
BACK:
RET

OUTPUT –

SCET/CO/2020_21/ EVEN/SHIFT_I/SEM_VI Page | 60


Subject Code: 3160712 Subject Name: MI Date: 05/03/21
Enrollment No:150420107067 Name: Naseebullah Andar

2) WRITE A PROGRAM TO COUNT THE NUMBER OF OCCURRENCE OF


VOWELS IN THE GIVEN STRING.

LXI H,C100H

MVI C,0AH

MVI A,41H

STORE:

MOV M,A

INX H

INR A

DCR C

JNZ STORE

MVI D,00H

LXI H,C100H

MVI C,0AH

COUNT:

MOV A,M

CALL VOWELS

INX H

DCR C

JNZ COUNT

MOV A,D

STA C110H

HLT

VOWELS:

CPI 41H

SCET/CO/2020_21/ EVEN/SHIFT_I/SEM_VI Page | 61


Subject Code: 3160712 Subject Name: MI Date: 05/03/21
Enrollment No:150420107067 Name: Naseebullah Andar
JZ FOUND

CPI 45H

JZ FOUND

CPI 49H

JZ FOUND

CPI 4FH

JZ FOUND

CPI 55H

JZ FOUND

CPI 61H

JZ FOUND

CPI 65H

JZ FOUND

CPI 69H

JZ FOUND

CPI 6FH

JZ FOUND

CPI 75H

JNZ NOT

FOUND:

INR D

NOT: RET

OUTPUT –

SCET/CO/2020_21/ EVEN/SHIFT_I/SEM_VI Page | 62


Subject Code: 3160712 Subject Name: MI Date: 05/03/21
Enrollment No:150420107067 Name: Naseebullah Andar

3) WRITE AN 8085 ASSEMBLY LEVEL PROGRAM TO GENERATE


FIBONACCI SERIES FOR 10 NUMBERS. STORE THE RESULT IN THE
MEMORY.

MVI E,0AH

MVI B,00H

MVI C,01H

LXI H,C100H

MOV M,B

DCR E

INX H

MOV M,C

DCR E

BACK:

MOV A,C

CALL FIBO

INX H

MOV M,A

DCR E

JNZ BACK

HLT

FIBO:

ADD B

MOV B,C

MOV C,A

RET

SCET/CO/2020_21/ EVEN/SHIFT_I/SEM_VI Page | 63


Subject Code: 3160712 Subject Name: MI Date: 05/03/21
Enrollment No:150420107067 Name: Naseebullah Andar

OUTPUT -

SCET/CO/2020_21/ EVEN/SHIFT_I/SEM_VI Page | 64


Subject Code: 3160712 Subject Name: MI Date: 05/03/21
Enrollment No:150420107067 Name: Naseebullah Andar

4) WRITE AN 8085 ASSEMBLY LEVEL PROGRAM TO MULTIPLY TWO


8 – BIT NUMBERS STORED IN MEMORY AND STORE THE FINAL
RESULT IN THE MEMORY.

USING SUCCESSIVE ADDITION -


LXI H,C100H
MOV A,M
MOV C,M
INX H
MOV B,M
DCR B
CALL SUM
STA C110H
HLT
SUM: ADC C
DCR B
JNZ SUM
RET

OUTPUT -

SCET/CO/2020_21/ EVEN/SHIFT_I/SEM_VI Page | 65


Subject Code: 3160712 Subject Name: MI Date: 05/03/21
Enrollment No:150420107067 Name: Naseebullah Andar
USING SHIFTING OPERATION -

LXI H,C100H

MOV E,M

MVI D,00H

INX H

MOV A,M

MVI C,08H

LXI H,0000H

CALL MUL

SHLD C110H

HLT

MUL: RRC

JNC SKIP

DAD D

SKIP: XCHG

DAD H

XCHG

DCR C

JNZ MUL

RET

OUTPUT -

SCET/CO/2020_21/ EVEN/SHIFT_I/SEM_VI Page | 66


SU Subject Code: 3160712 Subject Name: MI Date: 12/03/21
Enrollment No:150420107067 Name: Naseebullah Andar

PRACTICAL - 10
PROBLEM STATEMENT –
1) A STRING OF 10 DATA BYTES IS GIVEN TO YOU STARTING FROM
LOCATION D000H. CHECK WHETHER IT IS A PALINDROME OR
NOT. STORE YOUR RESULTS ON LOCATION D100H.
INPUT -
LXI H,D000H

LXI D,D009H

LOOP: LDAX D

MOV B,M

CMP B

JNZ EXIT

INX H

DCX D

MOV A,L

CMP E

JC LOOP

MVI A,01H

STA D100H

HLT

EXIT: MVI A,02H

STA D100H

HLT

SCET/CO/2020_21/ EVEN/SHIFT_I/SEM_VI Page | 67


SU Subject Code: 3160712 Subject Name: MI Date: 12/03/21
Enrollment No:150420107067 Name: Naseebullah Andar

OUTPUT -

SCET/CO/2020_21/ EVEN/SHIFT_I/SEM_VI Page | 68


SU Subject Code: 3160712 Subject Name: MI Date: 12/03/21
Enrollment No:150420107067 Name: Naseebullah Andar

2) AN ARRAY OF TEN DATA BYTES IS STORED ON MEMORY


LOCATIONS 2100H ONWARDS. WRITE AN 8085 ASSEMBLY
LANGUAGE PROGRAM TO FIND THE BYTES HAVING
COMPLEMENTED NIBBLES (E.G. 2DH, 3CH, 78H ETC.) AND STORE
THEM ON A NEW ARRAY STARTING FROM MEMORY LOCATIONS
2200H ONWARDS.
INPUT -
LXI H,4100H
LXI D,4200H
LOOP: MVI C,0AH
MOV A,M
RLC
RLC
RLC
RLC
MOV B,L LXI H,4100H
BACK: CMP M
JZ FOUND
INX H
DCR C
JNZ BACK
INR B
MOV L,B
MOV A,B
CPI 0AH
JNZ LOOP
HLT
FOUND: RRC
RRC
RRC
RRC

SCET/CO/2020_21/ EVEN/SHIFT_I/SEM_VI Page | 69


SU Subject Code: 3160712 Subject Name: MI Date: 12/03/21
Enrollment No:150420107067 Name: Naseebullah Andar

STAX D
INX D
INR B
MOV L,B
MOV A,B
CPI 0AH
JNZ LOOP
HLT

OUTPUT -

SCET/CO/2020_21/ EVEN/SHIFT_I/SEM_VI Page | 70


SU Subject Code: 3160712 Subject Name: MI Date: 12/03/21
Enrollment No:150420107067 Name: Naseebullah Andar

3) AN ARRAY OF TWENTY DATA BYTES IS STORED ON MEMORY


LOCATIONS 4100H ONWARDS. WRITE AN 8085 ASSEMBLY
LANGUAGE PROGRAM TO REMOVE THE DUPLICATE ENTRIES
FROM THE ARRAY AND STORE THE COMPRESSED ARRAY ON A
NEW ARRAY STARTING FROM MEMORY LOCATIONS 4200H
ONWARDS.
INPUT –
LXI H,4100H
MOV A,M
STA 4200H
LOOP: LXI D,4200H
INX H
MOV B,M
BACK: LDAX D
CMP B
JZ SKIP
INX D
MOV A,L
CMP E
JNZ BACK
MOV A,B
STAX D
SKIP: MVI A,13H CMP L
JNZ LOOP
HLT

SCET/CO/2020_21/ EVEN/SHIFT_I/SEM_VI Page | 71


SU Subject Code: 3160712 Subject Name: MI Date: 12/03/21
Enrollment No:150420107067 Name: Naseebullah Andar

OUTPUT -

SCET/CO/2020_21/ EVEN/SHIFT_I/SEM_VI Page | 72


SU Subject Code: 3160712 Subject Name: MI Date: 12/03/21
Enrollment No:150420107067 Name: Naseebullah Andar

4) WRITE AN 8085 ASSEMBLY LANGUAGE PROGRAM TO COUNT THE


NUMBER OF BYTES THAT ARE GREATER THAN (25)10 AND LESSER
THAN (65)10 FROM AN ARRAY OF TWENTY BYTES STORED ON
MEMORY LOCATIONS 2000H ONWARDS. STORE SUCH NUMBERS
ON MEMORY LOCATIONS 2100H ONWARDS.
INPUT -
LXI H,4100H

MVI C,00H

MVI D,14H

LOOP: MOV A,M

CPI 19H

JC BACK

CPI 41H

JNC BACK

INR C

BACK: INX H

DCR D

JNZ LOOP

MOV A,C

STA 4200H

HLT

SCET/CO/2020_21/ EVEN/SHIFT_I/SEM_VI Page | 73


SU Subject Code: 3160712 Subject Name: MI Date: 12/03/21
Enrollment No:150420107067 Name: Naseebullah Andar

OUTPUT -

SCET/CO/2020_21/ EVEN/SHIFT_I/SEM_VI Page | 74

You might also like