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 differences between macros and subroutines, Explain the differe...

Explain the differences between macros and subroutines. Macros Vs Subroutines (i) Macros are pre-processor directives which are processed before the source program is pass

Find the nyquist rate, Find the Nyquist rate for the following signals: (a)...

Find the Nyquist rate for the following signals: (a) x(t) = 5 sin 3000πt cos 4000πt (b) A binary channel with bit rate 36000 bps is available for PCM voice transmission. Fi

Explain deadlock, What is a deadlock? A deadlock is a situation that ca...

What is a deadlock? A deadlock is a situation that can increase when two units, A and B use a shared resource. Assume that unit B cannot complete its task unless unit A complet

Pervasive computing, Explain why pervasive computing can be termed as a “te...

Explain why pervasive computing can be termed as a “technology that disappears”

Scientific knowledge, Scientific knowledge: This is not to be confused...

Scientific knowledge: This is not to be confused with the applications of "AI" programs to other sciences, discussed later. Its subfields can be classified into a variety of t

What is a message passing system, Distributed System 1. What is a messa...

Distributed System 1. What is a message passing system? Discuss the desirable features of a message passing system. 2. Discuss the implementation of RPC Mechanism in detail.

Memory organization - computer architecture, Memory Organization - Computer...

Memory Organization - Computer architecture: BASIC CONCEPTS: Address space - 16-bit : 216 = 64K mem. locations - 32-bit : 232 = 4G mem. locations -          40-b

Explain the architectural description languages, Explain the Architectural ...

Explain the Architectural description languages Architectural description languages (ACLs) have been developed for the architectural description in analysis and design process

Explain the advantages of high level languages, Explain the Advantages of H...

Explain the Advantages of High Level Languages? The major advantage of high-level languages over low-level languages is that they are easier to write, read, and maintain. Ultim

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