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

Show division and multiplication operation, Q. Show Division and multiplica...

Q. Show Division and multiplication operation? These operations can be represented as x + y = (N x   × 2 Ex-Ey + N y ) × 2 Ey and x-y = (N x × 2 Ex-Ey -N y ) × 2 Ey

Relationship between distributed and mobile computing, a) Briefly describe...

a) Briefly describe the relationship between distributed computing, mobile computing and pervasive computing. b) Suppose the following scenario, which demonstrate the possibili

Describe how the it infrastructure is designed, IT Management 1. Descri...

IT Management 1. Describe how the IT infrastructure is designed. 2. Explain briefly the audit planning phase in IT Audit 3. Explain localized and distributed load balanci

Working of fully parallel associative processor, Q. Working of Fully Parall...

Q. Working of Fully Parallel Associative Processor? Fully Parallel Associative Processor: This processor accepts the bit parallel memory organisation. There are 2 kinds of this

Can a structure be used within a structure, Can a structure be used within ...

Can a structure be used within a structure? Yes , a structure can be used within a structure known as nesting of structures.

Define the thread libraries, Q. Define the Thread libraries? The most d...

Q. Define the Thread libraries? The most distinctive representatives of shared memory programming models are thread libraries present in most of modern operating systems. Illus

What is ''preemption'' program, Program 'preemption' is? Ans. Forced de...

Program 'preemption' is? Ans. Forced de allocation of the CPU from a program that is executing on the CPU is called preemption program.

Explain about interrupt servicing routines, Q. Explain about Interrupt serv...

Q. Explain about Interrupt servicing routines? First the situation is to be checked as to why the interrupt has happened. That includes not only device but also why the device

External communication interfaces, External interface is interface between ...

External interface is interface between I/O interface and peripheral devices. Interface can be characterised into 2 main categories: (a) parallel interface and (b) serial interface

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