0% found this document useful (0 votes)
59 views20 pages

Picture Courtesy: Intel Corporation

The 8086 was Intel's first 16-bit microprocessor introduced in 1978. It had a 16-bit data bus and address bus, allowing it to access more memory than earlier 8-bit processors. It had an extensive instruction set that supported arithmetic, logic, data transfer, and other operations. The 8086 architecture became very popular and was the basis for subsequent x86 processors that are still in widespread use today.
Copyright
© Attribution Non-Commercial (BY-NC)
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPT, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
59 views20 pages

Picture Courtesy: Intel Corporation

The 8086 was Intel's first 16-bit microprocessor introduced in 1978. It had a 16-bit data bus and address bus, allowing it to access more memory than earlier 8-bit processors. It had an extensive instruction set that supported arithmetic, logic, data transfer, and other operations. The 8086 architecture became very popular and was the basis for subsequent x86 processors that are still in widespread use today.
Copyright
© Attribution Non-Commercial (BY-NC)
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPT, PDF, TXT or read online on Scribd
You are on page 1/ 20

High Performance 16-bit

Microprocessor
1978: 8086-8088

Picture Courtesy: Intel Corporation


Microprocessor History
1st Generation 2nd Generation 3rd Generation
• Early 1970’s • 1973-74 • Mid 1970’s
• 4 - bit - nibble data • 8-bit - 1 byte wide • 16 - bit
• Low Performance • Higher Performance • Higher
• Limited System • Larger System Performance
Capabilities Capabilities • Special and general
• Low Cost • Greater ease of purpose
• Programming microcomputer
Like PPS 4
• Like 8085 applications
• Special Purpose • Like 8086
Applications • Uses:Electronic
Instruments, Cash • Uses: Electronic
• Uses: Calculators,
Registers, Printers instruments, Word
Toys
Processing systems
The world’s most popular
architecture
• An extension of 8080 8 - bit Microprocessor from Intel
Corporation and cousin of Z80.
• Mainly evolved due to requirements for larger memory
systems.
• With Vast Instructions set
• The World’s most popular architecture 8086 - 1st
16-bit microprocessor Introduced by Intel Corporation in
1978.
MIPS VS 8086

MIPS 8086
• Introduced in 1985 • Introduced in 1978 by Intel
• Separate operands for • One of the operands acts as
source and destination both source and destination
• Not possible to have one of • One of the operands can be
the operands in memory in memory
• General Instruction format • General Instruction format
opcode destination, source1, opcode destination/source1, source2
source2
Instruction Format
16 - bit Instruction mode

Opcode MOD REG-R/M Displacement Immediate


1-2 bytes 0-1 bytes 0-1 bytes 0-2 bytes

• Opcode selects the operation performed by the


microprocessor
• MOD specifies the addressing mode for the selected
instruction, also determines if displacement is present or not.
• Displacement specifies the amount of displacement for the
address
• Immediate specifies the address in case of immediate
addressing
Format of register-to-register
instruction:

opcode = 001010 means "Subtract"


w =1 means "word" (16 bits); 0 means "byte"
dest reg = address of destination register: 000 = AX
src reg = address of source register: 000 = AX
Instruction Set
The instructions in 8086, can be classified
into 13 groups based on their functions.
1. Data Transfer Instructions 2. Arithmetic Instructions
3. Logic Instructions 4. Compare Instruction
5. Jump Instructions 6. Loop Instructions
7. Shift Instructions 8. Rotate Instructions
9. Flag Control Instructions 10. String Instructions
11.Input / Output Instructions 12. Interrupt Instructions
13. Subroutine and Subroutine handling instructions.
Data Transfer Instructions
Move data between its Internal registers or
between an internal register and a storage location
in memory

• MOV target,source
target,source – reg,reg / reg,mem / mem,reg / mem,imme / reg,imme

• XCHG target,source
target,source – reg,reg / reg,mem / mem,reg
Data Transfer Instructions
MOV Move byte or word to register or memory
IN, OUT Input byte or word from port, output word to port
LEA Load effective address
LDS,
LES Load pointer using data segment, extra segment
PUSH,
POP Push word onto stack, pop word off stack

XCHG Exchange byte or word

XLAT Translate byte using look-up table


Arithmetic Instructions
Extensive complement of arithmetic instructions
• Addition Instructions - ADD, ADC, INC, AAA, DAA
• Subtraction Instructions - SUB, SBB, DEC, NEG, AAS,
DAS
• Multiplication Instructions - MUL, IMUL, AAM
• Division Instructions - DIV, IDIV, AAD, CBW, CWD
ADD dest, source SUB dest, source
dest, source – reg , reg / reg, mem / mem, reg / mem, imme / reg, imme
INC dest, DEC dest, NEG dest
dest – reg / mem
Arithmetic Instructions
ADD,
SUB Add, subtract byte or word
ADC,
SBB Add, subtract byte or word and carry (borrow)
INC,
DEC Increment, decrement byte or word
NEG Negate byte or word (two's complement)
CMP Compare byte or word (subtract without storing)
MUL,
DIV Multiply, divide byte or word (unsigned)
IMUL,
IDIV Integer multiply, divide byte or word (signed)
CBW, Convert byte to word, word to double word (useful
CWD before multiply/divide)
Logic Instructions
NOT Logical NOT of byte or word (one's complement)
AND Logical AND of byte or word
OR Logical OR of byte or word
XOR Logical exclusive-OR of byte or word
TEST Test byte or word (AND without storing)

Note: All instructions that have two operands, cannot have both operands to
be memory locations.
Compare and Jump Instructions
Compare Instructions
Instruction to compare two 8 bit or 16 bit numbers
• CMP
Jump Instructions
• Unconditional
- JMP
• Conditional
- Jcc
Loop and Input/Output
Instructions
Three instructions specifically designed for implementing
loops.
• LOOP
• LOOPE/LOOPZ
• LOOPNE/LOOPNZ
Input/Output instructions
• IN
• OUT
Flag Control Instructions
Flag control instructions either monitor the status of
executing instructions or control options available in its
operation.
• LAHF
• SAHF
• CLC
• STC
• CMC
• CLI
• STI
Interrupt Instructions
Number of instructions for processing interrupts
• CLI
• STI
• INT n
• IRET
• INTO
• HLT
• WAIT
String Handling Instructions
Equipped to handle string operations
• MOVS
• MOVSB
• MOVSW
• CMPS
• SCAS
• LODS
• STOS
Rotate, Shift and Subroutine and
Subroutine Handling Instructions
Shift Instructions
- Logical shift
SHL, SHR
- Arithmetic shift
SAL, SAR
Rotate Instructions
- ROL, ROR, RCL, RCR
• CALL and RET instructions
• PUSH and POP instructions
The Modern Microprocessor
• 8086 extended further to 8088, 16-bit Microprocessor,
whose increased memory size and additional instructions
led to more sophisticated applications for Microprocessor.
• Microprocessors were called CISC - Complex instruction
set computers, because of the number and complexity of
instructions.
• Very soon the memory offered by the 8088 became
insufficient, in 1983 leading to the introduction of 80286,
shortly before 80186/80188 were introduced. All being 16
bit.
• Demand yet increasing, in 1986, 32 -bit microprocessor
80386 was introduced followed by 80486 in 1989..
References
• 16-bit Micro-processors
Architecture,Software and Interface Techniques
Walter A.Triebel, Avtar Singh
• The Intel Microprocessors 8086/8088, 80186/80188, 80286, 80386,
80486, Pentium, and Pentium Pro Processor
Architecture, Programming, and Interfacing.
Barry B. Brey
• http://www.intel.com/
• http://www.hardwarebible.com/Microprocessors/8086.htm
• http://www.cms.dmu.ac.uk/
• http://www.cs.uakron.edu
• http://www.engr.sjsu.edu/

You might also like