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

?????, c program??????????

c program??????????

Explain about wildcard character in dos, Q. Explain about wildcard characte...

Q. Explain about wildcard character in DOS? Sometimes you may like to list files having similar names. Let as suppose that these files are present in a root directory of drive

Array to be sorted is partitioned again and again, The sorting method where...

The sorting method where array to be sorted is partitioned again and again in such a way that all elements less than or equivalent to partitioning element appear before it and thos

Properties of vector-based graphic files, Question: a) Write a short no...

Question: a) Write a short note on each of the terminologies below pertaining to multimedia: i) Developers. ii) Users. iii) Authoring Tools. iv) Product. b) Software d

Explain the resources of an operating system, Explain the resources of da...

Explain the resources of data structure is used by an operating system to keep track of process information? Explain A process is a program in execution. An operating system

Advantages of random scan display, Advantages of random scan display ...

Advantages of random scan display Early computer displays: basically an oscilloscope. Control X, Y with vertical/horizontal plate voltage. Often used intensity as

Explain the register transfer language, Explain the Register transfer langu...

Explain the Register transfer language Register transfer language means there must be data flow between two registers and logic is in between them for end registers data must f

Explain about interrupt-processing sequence, Q. Explain about Interrupt-Pro...

Q. Explain about Interrupt-Processing Sequence? The occurrence of an interrupt fires a numbers of events both in processor hardware and software. Figure below displays a sequen

How to set a read or write watch point for a variable, By using Rwatch, Awa...

By using Rwatch, Awatch command in GDB we can set read or write watchpoint for a variable.

Towers of hanoi problem, The Towers of Hanoi Problem Towers of Hanoi pro...

The Towers of Hanoi Problem Towers of Hanoi problem is described. There are three pegs on which disks are "threaded" (there are holes in the disks to allow them to be placed on

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