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

How are standard query operators implemented in linq, Standard Query Operat...

Standard Query Operators are executed as extension methods in .NET Framework. These Standard Query Operators can be used to work with any collection of objects that executes the IE

Computer grphics, Advantages of DDa algorithms for line drawimg

Advantages of DDa algorithms for line drawimg

What is task identifier, Q. What is task identifier? Each and every PVM...

Q. What is task identifier? Each and every PVM task is uniquely recognized by an integer known as task identifier (TID) assigned by local pvmd. Messages are received from and s

Scanners, A Scanner is a device which allows you to capture photographs or ...

A Scanner is a device which allows you to capture photographs or drawings or text from tangible sources (paper or slides etc.) in electronic form. Scanners work by detecting differ

Constraint satisfaction problems, Constraint Satisfaction Problems: Fu...

Constraint Satisfaction Problems: Furthermore I was perhaps most proud of AI on a Sunday. However this particular Sunday, a friend of mine found an article in the Observer reg

Determine less propagation delay in synchronous-ripple ckt, You have two co...

You have two counters counting up to 16, built through negedge DFF, First circuit is synchronous and second is "ripple" as cascading, which circuit has a less propagation delay? Wh

Why smtp used as transfer protocol for web pages, Can SMTP be used as trans...

Can SMTP be used as transfer protocol for Web pages? Why? SMTP is an easy mail transfer protocol. This uses ASCII text for all communications. SMTP needs reliable delivery- the

What will occur when contents of register are shifter left, What will occur...

What will occur when contents of register are shifter left, right? This is well known that into left shift all bits will be shifted left and LSB will be appended along with 0 a

display the contents of the file grade, a) Input names of students from th...

a) Input names of students from the user, terminated by "ZZZ", 0, 0, 0 and create a data file grades with records of the following form: Student (string), test1 (integer), test2 (i

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