Microprocessor AND Microcontroller Practical Lab File: Name-Enrollment No. - Course/Branch - Btech/Mae
Microprocessor AND Microcontroller Practical Lab File: Name-Enrollment No. - Course/Branch - Btech/Mae
AND
MICROCONTROLLER
PRACTICAL LAB FILE
APPARATUS : GNUSim8085
ALGORITHM:
PROGRAM:
OBSERVATION :
ADDRESS(HEX) ADDRESS DATA
INPUT : 5000 20480 4
5001 20481 3
OUTPUT : 5002 20482
RESULT : THUS THE PROGRAM TO ADD TWO 8-BIT NUMBER WAS EXECUTED.
EXPERIMENT – 2
AIM : ADDITION OF TWO 16 BITS NUMBERS
APPARATUS : GNUSim8085
PROGRAM :
OBSERVATION :
5021 20513 72
5022 20514 50
5023 20515 42
AIM : TO PERFORM MULTIPLICATION OPERATION ON TWO 8 BIT NUMBERS X AND Y. VERIFY THE
RESULT USING BINARY MULTIPLICATION.
APPARATUS : GNUSim8085
PROGRAM :
LOOP1 : ADD B
DCR C
LNZ LOOP1
OBSERVATION:
3001 12289 3
AIM : TO PERFORM DIVISION OPERATION ON TWO 8 BIT NUMBER X AND Y. VERIFY THE RESULT
USING BINARY DIVISION.
ALGORITHM :
1) START THE PROGRAM BY LOADING HL REGISTER PAIR WITH ADDRESS OF MEMORY LOCATION.
2) MOVE THE DATA TO A REGISTER ( B REGISTER).
3) GET THE SECOND DATA AND LOAD INFO ACCUMULATOR.
4) COMPARE THE TWO NUMBERS TO CHECK FOR CARRY.
5) SUBTRACT THE TWO NUMBERS.
6) INCREMENT THE VALUE OF CARRY
7) CHECK WHEATHER REPEATED SUBRACTION IS OVER AND STORE THE VALUE OF PRODUCT AND
CARRY IN MEMORY LOCATION.
8) TERMINATE THE PROGRAM.
PROGRAM :
PROGRAM :
LXI H,2000H INITIALIZE HL REGISTER TO 2000H
MOV B,M LOAD DATA TO B REGISTER
MVI D,01H SET D REGISTER WITH 1
FACTORIAL : CALL MULTIPLY SUBROUTINE CALL FOR MULTIPLICATION
DCR B DECRREMENT B
JNZ FACTORIAL CALL FACTORIAL TILL B BECOMES 0
INX H INCREMENT MEMORY
MOV M,D STORE RESULT IN MEMORY
HLT HALT
MULTIPLY : MOV E,B TRANSFER CONTENTS OF B TO C
MVI A,00H CLEAR ACCUMULATED TO STORE RESULT
MULTIPLYLOOP : ADD D ADD CONTENT OF D TO A
DCR E DECREMENT E
JNZ MULTIPLYLOOP REPEATED ADDITION
MOV D,A TRANSFER CONTENTS OF A TO D
RET RETURN FROM SUBROUTINE
OBERVATION :
ADSRESS VALUE
INPUT 2000H 6(X)
OUTPUT 2001H 208H=520D