By clicking “Check Writers’ Offers”, you agree to our terms of service and privacy policy. We’ll occasionally send you promo and account related email
No need to pay just yet!
About this sample
About this sample
Words: 769 |
Pages: 2|
4 min read
Published: Mar 1, 2019
Words: 769|Pages: 2|4 min read
Published: Mar 1, 2019
Intel 8086 is a 16 bit integer processor. It has a 16-bit Data bus and a 20-bit Address bus. Since 20-bit address lines are available that provide up to 1MB of storage. It consists of a powerful instruction set which makes it possible to carry out different operations easily. It supports 2 modes of operation, Maximum (multiple processors can be used) and Minimum (Single processor is used). Architecture of 8086 The internal architecture of 8086 is divided into 2 units, Bus Interface Unit (BIU) and Execution Unit (EU). A diagram of the architecture is shown below.
Bus Interface Unit (BIU) BIU takes care of all data and address transfers on the buses for the EU like sending addresses, fetching instructions from the memory, reading data from ports, writing data into the memory ports and lastly it also generates the memory addresses. The EU and the BIU are connected by the Internal Bus.
The BIU has the following functional parts:
EU gives instructions to BIU stating from where to fetch data, decode it and finally execute it. Its function is to control operations on data using the instruction decoder and ALU (Arithmetic Logic Unit). The data on which the operations are performed is brought in using the BIU. The EU has the following functional parts:
It represents the result of the last arithmetic or logic instruction executed. These flags are listed below:
A. Carry Flag- This flag is set to ‘1’ when an addition causes a carry or a subtraction causes a borrow.
B. Auxiliary Flag- This flag is set to ‘1’ when an addition causes a carry while moving from a lower nibble to the upper nibble in BCD addition.
C. Parity Flag- This flag is set to ‘1’ if the low order 8 bits of the result contain an even number of ‘1’s. D. Zero Flag- This flag is set to 1 when the result of arithmetic or logical operation is zero.
E. Sign Flag- This flag holds the sign of the result, i.e. when the result of the operation is negative, then the sign flag is set to 1 else set to 0.
F. Overflow Flag- This is set to ‘1’ if the result is out of range or when the system capacity has exceeded.
Conditional Flags
These control the operations of the EU and can also be used by the user.
These flags are listed below:
A. Trap flag − It is used for single step control and allows the user to execute one instruction at a time for debugging. If it is set, then the program can be run in a single step mode.
B. Interrupt flag − It is an interrupt enable/disable flag, i.e. used to allow/prohibit the interruption of a program. It is set to 1 for interrupt enabled condition and set to 0 for interrupt disabled condition.
C. Direction flag − It is used in string operation. As the name suggests when it is set then string bytes are accessed from the higher memory address to the lower memory address and vice-a-versa.
Browse our vast selection of original essay samples, each expertly formatted and styled