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

Queueing process, explain in detail about queueing process

explain in detail about queueing process

Differentiate between worms and boot-sector viruses, Question: (a) Pro...

Question: (a) Program instructions and data are brought into memory first, in order to be executed. Explain how the CPU enables an instruction to be executed? (b) Describe

Define atomic directive in fortan, Q. Define Atomic Directive in FORTAN? ...

Q. Define Atomic Directive in FORTAN? Atomic directive guarantees a specific storage location is updated atomically rather than exposing it to odds of multiple simultaneous wri

What are the types of smart cards used in e-commerce, What are the types of...

What are the types of Smart cards used in e-commerce? Generally there are 2 types of smart cards. Memory smart cards, which can be sighted as minuscule removable read/ write

How exceptions are handled in java, How exceptions are handled in java? ...

How exceptions are handled in java? Exception handing In Java: A java exception is an object which describes an exceptional condition which has occurred in a piece of code.

Expert systems, An expert systems is software that contains a knowledge ...

An expert systems is software that contains a knowledge base of facts and relationships and has the ability to make inferences based on that knowledge base. An experts sys

Explain the operation of JK flip flop when all inputs are 0, Write the trut...

Write the truth table for a clocked J-K flip-flop that is triggered by the positive-going edge of the clock signal. Explain the operation of this flip-flop for the following condit

Where protocol operates to monitor and control n/w devices, Protocol used t...

Protocol used to monitor and control network devices operates at? Protocol operates at application layer to monitor and control network devices operates.

A variable number of input arguments, Write a function that will get a vari...

Write a function that will get a variable number of input arguments: the length and width of a rectangle, and possibly also the height of a box that has this rectangle as its base.

How many lists can a program can produce, How many lists can a program can ...

How many lists can a program can produce? Every program can produce up to 21 lists: one basic list and 20 secondary lists.  If the user makes a list on the next level (that is,

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