Returns and procedures definitions in 8086, Computer Engineering

Assignment Help:

Q. Returns and Procedures definitions in 8086?

8086 microprocessor supports RET and CALL instructions for procedure call. CALL instruction not only branches to indicate address but also pushes return address onto the stack. Additionally it also initialized IP with address of the procedure. RET instructions basically pops the return address from stack. 8086 supports two types of procedure call. These are NEAR and FAR calls.

NEAR procedure call is also called as Intrasegment call as called procedure is in same segment from that call has been made. Hence only IP is stored as return address. IP can be stored on stack as:

912_Returns and Procedures definitions in 8086.png

Please note that the growth of stack is towards stack segment base. So stack becomes full on an offset 0000h. Also for push operation, we decrement SP by 2 as stack is a word stack (word size in 8086 = 16 bits) whereas memory is byte organised memory.

FAR procedure call which is also known as intersegment call is a call made to separate code segment. So the control will be transferred outside current segment. So both IP and CS need to be stored as return address. These values on stack after the calls looks as below:

597_Returns and Procedures definitions in 80861.png

When 8086 executes FAR call it first stores contents of code segment register followed by contents of IP on to the stack. A RET from NEAR procedure. Pops the 2 bytes in IP. RET from the FAR procedure pops 4 bytes from the stack.


Related Discussions:- Returns and procedures definitions in 8086

Need of the assembly language, Q. Need of the assembly language ? Machi...

Q. Need of the assembly language ? Machine language code comprises the 0-1 combinations which computer decodes directly.  Though the machine language has the following problems

Explian service topologies, Explian Service Topologies Service Topolog...

Explian Service Topologies Service Topologies In a service-based architecture there increase dependencies between services resulting from cooperation

Name the variable types of c, C provides a wide range of variable types. ...

C provides a wide range of variable types. Normal 0 false false false EN-IN X-NONE X-NONE MicrosoftInternetExplorer4

Embedded software, Embedded Software Intelligent products have becom...

Embedded Software Intelligent products have become commonplace for all consumer and industrial market. Embedded software stays in read only memory and is utilised to control

Input output in assembly program, Q. Input output in assembly program? ...

Q. Input output in assembly program? Software interrupt is a call to an Interrupt servicing program situated in the operating system. Generally the input-output routine in 8086

Write C++ for following question., We are planning an orienteering game. Th...

We are planning an orienteering game. The aim of this game is to arrive at the goal (G) from the start (S) with the shortest distance. However, the players have to pass all the che

Explain flash devices, Explain Flash devices It is possible to read the...

Explain Flash devices It is possible to read the contents of a one cell, but it is only possible to write an whole block of cells Greater density which leads to superior cap

increase the number of rows or columns in a worksheet, How can I increase ...

How can I increase the number of rows or columns in a worksheet? Ans) In Excel, each workbook has 255 columns and 65,526 rows. These values are fixed and cannot be changed. If

What is repository info. systems, What is Repository Info. Systems? It ...

What is Repository Info. Systems? It is a tool with which you can create data stored in the ABAP/4 Dictionary available

What is a session in php, A session is a logical object formed by the PHP e...

A session is a logical object formed by the PHP engine to permit you to preserve data across subsequent HTTP requests. There is only one session object available to your PHP scr

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