Explain call and return statements, Computer Engineering

Assignment Help:

Q. Explain Call and Return Statements?

CALL:

      CALL X    Procedure Call to procedure/function named X

  CALL instruction causes the following to happen: 

1.  Decrement the stack pointer so that we won't overwrite last thing put on stack

(SP <---SP - 1)

901_Call and Return Statements.png

Figure: Call and Return Statements

2.  The contents of PC that is pointing to NEXT instruction the one just after CALL is pushed onto stack and M [SP] <--- PC.

3.  JMP to X address of the start of subprogram is put in PC register.This is all a jump does. So we go off to the subprogram though we have to remember where we were in calling program which means that we should remember where we came from so that we can get back there again. 

PC <--- X 

RETN:

RETN      Return from procedure.   

RETN instruction causes following to happen: 

1.  Pops the stack to produce an address/label.If correctly used, the top of the stack will comprise the address of next instruction after the call from that we are returning; it's this instruction with that we want to resume in calling program.

2.  Jump to popped address it implies that put the address into PC register.

 PC <---  top of stack value; Increment SP.


Related Discussions:- Explain call and return statements

Canonical genetic algorithm - artificial intelligence, Canonical Genetic Al...

Canonical Genetic Algorithm: In such a scenario with all search techniques there one of the first questions to ask along with GAs is how to define a search space that is actua

How do you create a permanent cookie, How do you create a permanent cookie?...

How do you create a permanent cookie?  By setting the expiry date of the cookie to a later on time (like 10 years later.)

What are the components of i-way infrastructure, What are the components of...

What are the components of I-way Infrastructure? There are three components of the I-way infrastructure: • Consumer access equipment • Local on-Ramps • Global informat

Internet programming, Futoshiki is a game played on an N by N (usually 5 by...

Futoshiki is a game played on an N by N (usually 5 by 5) grid and uses the symbols 1 .. N. The objective of the game is to place each symbol on the grid so that it only occurs once

What are the difference between heap and stack, What are the difference bet...

What are the difference between heap and stack? The Stack is more or less responsible for maintaining track of what's executing into our code or what's been "called". The Heap

Describe session handling in a web farm, Describe session handling in a web...

Describe session handling in a web farm, how does it work and what are the limits ?   In ASP.NET there are three ways to handle session objects. Single support the in-proc mec

Explain the differences between paging and segmentation, Explain the differ...

Explain the differences between Paging and segmentation. Paging and segmentation P aging Segmentation Computer memory is separa

What is block started by symbol, What is BSS(Block Started by Symbol)? ...

What is BSS(Block Started by Symbol)? A data showing at the machine level, that has initial values when a program begins and tells about how much space the kernel assigns for t

How can we set the table spaces and extent sizes, How can we set the table ...

How can we set the table spaces and extent sizes? You can state the extent sizes and the table space (physical storage area in the database) in which a transparent table is to

What are the basic functions of database utility, What are the basic functi...

What are the basic functions of Database utility? The basic features of database utility are: Make database objects. Remove database objects. Adjust database obj

Write Your Message!

Captcha
Free Assignment Quote

Assured A++ Grade

Get guaranteed satisfaction & time on delivery in every assignment order you paid with us! We ensure premium quality solution document along with free turntin report!

All rights reserved! Copyrights ©2019-2020 ExpertsMind IT Educational Pvt Ltd