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

Explain variable-partition contiguous storage allocation, Explain the conce...

Explain the concept of variable-partition contiguous storage allocation. Suppose that we have 1024K main memory available in that 128K is occupied through operating system pro

Single program multiple data, SPMD is actually a "high level" programming m...

SPMD is actually a "high level" programming model that can be built upon any combination of the previously mentioned parallel programming models. A single program is executed by al

What is meant by questionnaires, What is meant by Questionnaires This ...

What is meant by Questionnaires This includes sending out questionnaires to the work force or/and to customers to find out their views of existing system and to find out how.

Why is packet switching important, Why is packet switching important? Give ...

Why is packet switching important? Give at least two reasons. Packet switching is significant due to the following two purposes: 1. A sender and the receiver require coordin

What is the advantage of running the vuser as thread, VuGen gives the facil...

VuGen gives the facility to use multithreading. This enables more Vusers to be run pergenerator. If the Vuser is run as a process, the similar driver program is loaded into memory

Calculate the complexity of sorting algorithms, How do you calculate the co...

How do you calculate the complexity of sorting algorithms? Find the complexity of Insertion sort and Bubble Sort.                 The difficulty of sorting algorithms depends o

Amdahls law - calculate speed up performance, To calculate speed up perform...

To calculate speed up performance various laws have been developed. These laws are discussed here.  Amdahl's Law Remember, the speed up factor helps us in knowing the relat

Designing logic circuits, When designing a logic circuit with multipleoutpu...

When designing a logic circuit with multipleoutputs it is usual to treat it as several circuitseach with one output. So for our example wewould design three circuits; one with outp

What is view, What is View? A simple view can be thought of as a subset...

What is View? A simple view can be thought of as a subset of a table. It can be used for retrieving data, as well as updating or deleting rows. Rows updated or deleted in the v

How can we resize layout cells, Q. How can we Resize Layout Cells? To p...

Q. How can we Resize Layout Cells? To precisely design a page, you can set size of cells you add in a document. You can reposition cells in the page as well. 1.      Click o

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