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

What do you meant by a multimedia authoring system, Problem : a) What d...

Problem : a) What do you meant by a Multimedia Authoring System? b) Compare the verbose syntax to the dot syntax in Lingo. c) Explain each of the following terms: i) L

Example of asymptotic notations, Q. Example of asymptotic notations? Th...

Q. Example of asymptotic notations? The function f (n) belongs to the set  (g(n)) if there exists positive constants c such that for satisfactorily large values of n we have 0

Develop a calculator in masm, Assignment:  develop a calculator in MASM. ...

Assignment:  develop a calculator in MASM. Text chapters covered:  1 through 4, 5.4, 5.5, 6.3, 7.4 You will develop a "calculator" algorithm in MASM using reverse-polish nota

What is throughput?, If the throughput scales upward as time progresses and...

If the throughput scales upward as time progresses and the number of Vusers enhance, this showing that the bandwidth is sufficient. If the graph were to remain relatively flat as t

Interpreter, difference between pure and impute inter preter

difference between pure and impute inter preter

Safety argument for good design, So far we have considered the problems of ...

So far we have considered the problems of poor ID in terms of the loss of productivity and efficiency to business. There is another important aspect to consider: the issue of safet

Earned value analysis, Senior management has requested a status update on t...

Senior management has requested a status update on the workstation installation project.  As a part of this update, managers have requested that you present an Earned Value analysi

Define the analysis that determines the meaning of statement, Analysis whic...

Analysis which determines the meaning of a statement once its grammatical structure becomes known is termed as? Ans. The meaning of a statement when its grammatical structure b

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