8085
1.
What
is Stack? Explain about stack in 8085.
·
The
stack is a group of memory location in the R/W memory that is used for
temporary storage of binary information during the execution of a program
·
The
stack is a LIFO structure. – Last In First Out.
·
The
starting location of the stack is defined by loading a 16 bit address into the
stack pointer that spaced is reserved, usually at the top of the memory map
Stack
in 8085
·
In
8085 microprocessor system the beginning of the stack is defined in the program
by using the instruction LXI SP,<16
bit>
·
The
8085 provide two instruction PUSH & POP for storing information on the
stack and retrieving it back.
PUSH <Reg Pair> : Stores
content of register pair on to stack
POP <Reg
Pair> : Retrieves content from top of the stack in
to register pair
PUSH H
·
The
stack pointer is decremented by one to 2098 H , and the contents of the H
register are copied to memory location 2098H.
·
The
stack pointer register is again decremented by one to 2097H, and the contents
of the L register are copied to memory location 2097H.
·
The
contents of the register pair HL are not destroyed ; however HL is made
available for delay counter.
POP H
·
The
contents of the top of the stack location shown by the stack pointer are copied
in the L register and the stack pointer register is incremented by one to 2098
H.
·
The
contents of the top of the stack (now it
is 2098H) are copied in the H register, and
the stack pointer is incremented by one.
·
The
contents of memory location 2097H and
2098 are not destroyed until some other
data bytes are stored in these location.
Operation of
the stack
·
During
PUSH, the stack operates in a “decrement then store” style. The stack
pointer is decremented first, then the information is placed on the stack.
·
During
POP, the stack operates in a “use then increment” style. The information
is retrieved from the top of the stack and then the pointer is incremented.
·
The
SP pointer always points to “the top of the stack’’
1.
What
is subroutine? Explain implementation of subroutines in 8085.
·
A
subroutine is group of instruction written separately from the main program to
perform a function that occurs repeatedly in the main program.
·
When
a main program calls a subroutine the program execution is transferred to the
subroutine after the completion of the subroutine ,the program execution
returns to the main program.
·
The
microprocessor uses the stack to store the return address of the subroutine.
Subroutines
in 8085:
·
The
8085 has two instructions for dealing with subroutines.
·
The
CALL instruction is used to redirect program execution to the subroutine.
·
The
RET instruction is used to return to the main program at the end of the
subroutine
TThe CALL instruction
CALL <16-bit address of subroutine>
·
Call
subroutine located at the memory address specified by the 16 bit operand.
·
This
instruction places the address of the next instruction on the stack and
transfer the
program
execution to the subroutine address.
The
RET instruction
RET
·
Return
unconditionally from the subroutine.
·
This
instruction locates the return address on the top of the stack and transfers
the program execution back to the calling program.
Comments
Post a Comment