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

Build data flow diagrams showing functional dependencies, Build data Flow d...

Build data Flow diagrams showing functional dependencies Data flow diagrams are very useful for showing functional dependencies. In data flow diagrams processes are indicated

Enginering mechanics, if 2 forces are equal at an angle alpha between them...

if 2 forces are equal at an angle alpha between them - its resultant R and its direction

Explain direct broadcast & limited broadcast, Explain Direct broadcast & li...

Explain Direct broadcast & limited broadcast. Broadcast is a method to send a packet to all the stat ions on an exact network at once. Broadcast systems permit the possibility

How 74147 series ttl can be used as a decimal-to-bcd encoder, Illustrate ho...

Illustrate how 74147 series TTL can be used as a decimal-to-BCD encoder. Ans. Available IC in 74 series is 74147 that is a priority encoder. Such IC has active low inp

The components of i-way infrastructure, What are the components of I-way In...

What are the components of I-way Infrastructure? There are three mechanism of the I-way infrastructure: Consumer access equipment Local on-Ramps Global informa

What is public key cryptography, What is Public Key Cryptography? Pub...

What is Public Key Cryptography? Public-key cryptography is a type of modern cryptography that allows users to communicate safely without any previously agreeing on a shared

Which instruction is use in each process before proceeding, Before proceedi...

Before proceeding with its execution, each process must acquire all the resources it needs is called ? Ans. Hold and Wait is requires in each process should acquire all the res

Application to calculate weekly payment of a company, Problem: A compa...

Problem: A company requires a software application to calculate the weekly payment for its employees. The information about the employees (employees' data) is kept in a file.

What is wap, What is WAP? WAP is stands for Wireless Application Proto...

What is WAP? WAP is stands for Wireless Application Protocol. It is a global, open standard which gives mobile users access to Internet services by handled devices. Wireless A

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