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

Describe how a mobile terminating call, Problem: (a) Describe how a Mob...

Problem: (a) Describe how a Mobile Terminating call, from a PSTN phone, is processed in a GSM network. Illustrate your answer with a diagram. (b) What is a GPRS Support node

OR, importance of duality concep? Article Source: http://EzineArticles.co...

importance of duality concep? Article Source: http://EzineArticles.com/4133733

Mutation - canonical genetic algorithm, Mutation: However it may appea...

Mutation: However it may appear that the above recombinations are a little arbitrary that especially as points defining whether crossover and inversion occur are chosen random

Subsequent step in karnaugh map, The subsequent step in Karnaugh map is to ...

The subsequent step in Karnaugh map is to map truth table in the map. Mapping is done by putting a 1 in respective square belonging to 1 value in truth table. This mapped map is us

Explain the page stealer and the fault handler, How the Kernel handles both...

How the Kernel handles both the page stealer and the fault handler? The page stealer and the fault handler thrash because of the shortage of the memory. If the sum of the worki

What are the features of abap/4 dictionary, What are the features of ABAP/4...

What are the features of ABAP/4 Dictionary? The most significant features are: Integrated to aABAP/4 Development Workbench. Active in the runtime environment.

How can i execute a php script using command line, Just run the PHP CLI (Co...

Just run the PHP CLI (Command Line Interface) program and give the PHP script file name as the command line argument. For instance, "php myScript.php", assuming "PHP" is the comman

Analysis of algorithms, Analysis of Algorithms For this task, each stu...

Analysis of Algorithms For this task, each student should do two things: An empirical analysis of the runtime and comparisons made for all algorithms as a function of input si

Explain LRU page replacement algorithm, Explain LRU Page replacement algori...

Explain LRU Page replacement algorithm. LRU policy: It expands to least recently use. This policy proposes that we remove a page that last usage is farthest from present time

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