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

Explain the hamiltonian path, What is Hamiltonian path?  A Hamiltonian ...

What is Hamiltonian path?  A Hamiltonian path in a directed graph G is a directed path that goes by each node exactly once. We consider a special case of this difficulty where

Bresenham''s line drawing algorithm, what are advantages and disadvantages ...

what are advantages and disadvantages of bresenham''s line drawing algorithm?

What do you meant by an expert system, (a) What do you meant by an Expert S...

(a) What do you meant by an Expert System (ES) and explain briefly the essential differences between a Decision Support system and ES. (b) What are decision tables and what are

What are the different methods of passing data, What are the different meth...

What are the different methods of passing data? There are three different methods of passing data Calling by reference    Calling by value Calling by value and result

How did you find web server related issues, Using Web resource monitors we ...

Using Web resource monitors we can search the performance of web servers. Using these monitors we can examine throughput on the web server, number of hits per second that happened

What is instruction register, Q. What is Instruction Register? Instruct...

Q. What is Instruction Register? Instruction Register (IR): Here instructions are loaded before execution. Comments on figure above are as below: All representations are

Differences between one hot and binary encoding, What are differences betwe...

What are differences between one hot and binary encoding? Common classifications used to explain the state encoding of an FSM is Binary or highly encoded and one hot. A bina

How can we pass selection and parameter data to a report, How can we pass s...

How can we pass selection and parameter data to a report? There are three options for passing selection and parameter data to the report. Using SUBMIT...WITH Using a rep

Datawarehousing, ) Define a job scheduling strategy that will meet business...

) Define a job scheduling strategy that will meet business requirement of reporting availability by 6am CST for the following cubes? Show the job scheduling dependencies in a picto

Group cells in a layout table, Now you will put navigation button cells you...

Now you will put navigation button cells you just created into a single table. Grouping cells into a table enables you to control cell spacing and to easily move the cells as a gro

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