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 do you understand by client-server architecture, Question: (a) (i...

Question: (a) (i) Explain what do you understand by Client/server architecture? (ii) List and briefly describe 3 types of Client/server architecture. (b) The most impo

What is the relation between response time and throughput, The Throughput g...

The Throughput graph represents the amount of data in bytes that the Vusers received from the server in a second. When we evaluate this with the transaction response time, we will

What is the function of cu, What is the function of CU? The control uni...

What is the function of CU? The control unit works as the nerve center that coordinates all the computer operations. It issues timing signals that governs the data transfer.

What are micrographics, What are micrographics? A micrographic is an im...

What are micrographics? A micrographic is an image or photographic reproduction of an object which is then changed to film. Micrographics are frequently used for permanent reco

Define peripheral, Define peripheral. Devices that are under the direct...

Define peripheral. Devices that are under the direct control of computer are said to be linked online. These devices are intended to read information into or out of the memory

Create perl scripts, Create Perl scripts as required below: a) Create a ...

Create Perl scripts as required below: a) Create a script named select_by_attribute.pl that accepts the name of a LibML documentand the name of a particular attribute from the c

What is a lambda expression, A Lambda expression is not anything but an Ano...

A Lambda expression is not anything but an Anonymous Function, can have expressions and statements. Lambda expressions can be used mostly to make delegates or expression tree types

What are the major components of a web browser, What are the major componen...

What are the major components of a web browser? A browser contains a set of clients, a controller and a set of interpreters which manages them. All browsers must have an HTML

Phase - thermodynamics, Phase - Thermodynamics: A phase is quantity of...

Phase - Thermodynamics: A phase is quantity of matter that is homogeneous throughout in chemical composition and physical structure. If the matter is all gas, all liquid or

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