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

Explain minimum hardware to indicate direction of rotating, The circle can ...

The circle can rotate clockwise and back. By using minimum hardware build a circuit to indicate the direction of rotating? Two sensors are required to determine the direction o

Explain procedure level of parallel processing, Procedure Level Here, p...

Procedure Level Here, parallelism is obtainable in the form of parallel executable procedures. In that case, design of algorithm plays a key role. E.g. every thread in Java is

What are escape sequences characters, What are escape sequences characters?...

What are escape sequences characters? List any six of them.  The characters which when used with output functions like printf( ),putc(),put() etc. helps in formatting the outpu

Multithreaded architecture, Q. Multithreaded Architecture? It is clear ...

Q. Multithreaded Architecture? It is clear at the moment if we provide a lot of contexts to multiple threads then processors with numerous contexts are known as multithreaded s

Data dictionary, data dictionary for online banking system in software engi...

data dictionary for online banking system in software engineering

Design the communication protocol, Design, write, and implement distributed...

Design, write, and implement distributed networked application using Java Design the communication protocol (message format and exchange procedure) that your application will re

What are the different layers in r/3 system, What are the different layers ...

What are the different layers in R/3 system? There are three layer:- Presentation Layer. Application Layer. Database Layer.

Explain about the e-commerce over extranets, Explain about the e-commerce o...

Explain about the e-commerce over extranets. Extranets are regarding “joining up” the supply chain-suppliers, distributors, resellers and customers are enabling business-to bus

Realize the basic gates with any one universal gate, What is a universal ga...

What is a universal gate? Give examples. Realize the basic gates with any one universal gate. Ans: Universal Gates:   NAND and NOR are termed as Universal gates. The OR, AN

Computer grphics, Advantages of DDa algorithms for line drawimg

Advantages of DDa algorithms for line drawimg

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