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

Baic electrical, Ask question #Minimumstate and explain thevenins theorem a...

Ask question #Minimumstate and explain thevenins theorem as applicable to electrical circuits 100 words accepted#

Flowchart, How to calculate the flowchart

How to calculate the flowchart

Water technology, Define end series and its application

Define end series and its application

Performance and issues in pipelining-throughput, Performance and Issues in ...

Performance and Issues in Pipelining Throughput:  Throughput of a pipeline can be defined as the number of results that have been getting per unit time. It can be denoted as:

Find max conversion time of 6-bit dual slope A/D converter, A 6-bit Dual Sl...

A 6-bit Dual Slope A/D converter uses a reference of -6V and a 1 MHz clock. It uses a fixed count of 40 (101000). Find Maximum Conversion Time.         Ans. The time T 1 specifie

Functions to remove common walls, We must also be able to remove common wal...

We must also be able to remove common walls between two cells. Write the function removewalls that accepts two cells and removes the wall that is common between the two (hint: any

Password cracking, Hashed strings can often be deciphered by 'brute forcing...

Hashed strings can often be deciphered by 'brute forcing'. Bad news, eh? Yes, and particularly if your encrypted passwords/usernames are floating around in an unprotected file some

Final implementation of object oriented modelling, Final Implementation of ...

Final Implementation of Object oriented modelling Final Implementation: At this phase, the final execution of classes and  relationships developed while object design takes

How do you detect if two 8-bit signals are same, By using XNOR gate if the ...

By using XNOR gate if the signals are similar then only the output will be one otherwise not.

Difference among java beans & servlets, Java bean is a reusable component, ...

Java bean is a reusable component, where as the servlet is the java program which extends the server capability.

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