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

Difference between leave transaction and call transaction, What is the diff...

What is the difference between Leave Transaction and Call Transaction? In contrast to LEAVE TO TRANSACTION, the CALL TRANSACTION  statement causes the system to start a new SAP

Explain performance evaluation in parallel computing, Explain Performance E...

Explain Performance Evaluation in parallel Computing In this section, we will discuss the key attributes used to measure performance of a computer system. The performance chara

Show the characteristic of cache memory, Q. Show the characteristic of cach...

Q. Show the characteristic of cache memory? The essential characteristic of cache memory is its fast access time. So very little or no time should be wasted when searching for

How to develop an object model, How to develop an object model To deve...

How to develop an object model To develop an object model firstly identify classes and their associations, as they affect overall problem structure and approach. Then prepare

What is XML DTD (Document Type Definition), What is XML DTD (Document Type ...

What is XML DTD (Document Type Definition)? DTD is a document which defines legal building blocks of a particular XML document. This defines the document structure along with

What are the features of ado.net, What are the features of ADO.Net ?  A...

What are the features of ADO.Net ?  ADO.NET features: 1. Disconnected Data Architecture 2. Data cached in Datasets 3. Data transfer in XML format 4. Interaction wit

In 8085 which is called as high order / low order register, Flag is known a...

Flag is known as Low order register & Accumulator is known as High order Register.

Define a console-program to make an array of integers, Define a console-pro...

Define a console-program to make an array of integers. Initialize the array and assign the values in array. Describe a method to pass the array and alter array elements. show array

What does not use by FTP, FTP does not use ? FTP doesn't use User Datag...

FTP does not use ? FTP doesn't use User Datagram Protocol.

Dynamic programming problem, KK manufacturing company is faced with demand ...

KK manufacturing company is faced with demand for its product in each of the next four periods as shown in Table 1.  It must decide upon a production schedule to meet these demands

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