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 are the disadvantages of linux, What are the disadvantages of Linux? ...

What are the disadvantages of Linux? Learning Lack of comparable programs More technical skill required

How branching takes place in instruction pipeline, How branching takes plac...

How branching takes place in Instruction pipeline. Explain with suitable examples

Examples of input, (i)  Input a single ASCII character into BL register wit...

(i)  Input a single ASCII character into BL register without echo on screen  CODE SEGMENT  MOV AH, 08H;         Function 08H  INT 21H          ;         the character inpu

Data routing functions-network properties, Data Routing Functions The d...

Data Routing Functions The data routing functions are the functions which when implemented  the path among the source and the objective. In dynamic interconnection networks the

Memory, #all type of memory

#all type of memory

Transition management system, please help me with psudocode for schedule ma...

please help me with psudocode for schedule management which contains stakeholder and application table

The advantages of specifying parameters during instantiation, The advantage...

The advantages of specifying parameters during instantiation method are: -  All values to all the parameters do not need to be specified. Only those parameters that are assigne

Strings made of left curly braces, In a logical system, a judgement is a st...

In a logical system, a judgement is a statement that is either true or false. So far, you are most familiar with the type of judgement "A is true", which is often simply abbreviate

Explain the use of structures with pointers., Explain the use of structures...

Explain the use of structures with pointers C permits a pointer to a structure variable. In fact a pointer to a structure is same to a pointer to any other variable. The pointe

Program size for different instruction set approaches, Q. Program size for ...

Q. Program size for different Instruction Set Approaches? Assumptions: Complex Instruction is: Add C, A, B having 16 bit addresses and 8 bit data operands All opera

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