All Topics  
Intel 8087

 
Intel 8087

   Email Print
   Bookmark   Link






 

Intel 8087



 
 
The 8087 was the first math coprocessor
Coprocessor

A coprocessor is a computer processor used to supplement the functions of the primary processor . Operations performed by the coprocessor may be floating point arithmetic, graphics, signal processing, string processing, Savitsky-Golay derivation, or encryption....
 for 16 bit processors designed by Intel (the I8231 was older but designed for the 8 bit Intel 8080
Intel 8080

The Intel 8080 was an early microprocessor designed and manufactured by Intel. The 8-bit microprocessor was released in April 1974 running at 2 megahertz , and is generally considered to be the first truly usable microprocessor....
); it was built to be paired with the Intel 8088
Intel 8088

The Intel 8088 is an Intel x86 microprocessor based on the Intel 8086, with 16-bit registers and an 8-bit external data bus. It can address up to 1 megabyte of random access memory....
 and 8086
Intel 8086

The 8086 is a 16-bit microprocessor chip designed by Intel and introduced on the market in 1978, which gave rise to the x86 architecture. Intel 8088, released in 1979, was essentially the same chip, but with an external 8-bit bus , and is notable as the processor used in the original IBM PC....
 microprocessors. The purpose of the 8087, the first of the x87
X87

x87 is a math-related instruction subset of the x86 architecture of Central processing unit. It is so called because initially such instructions were processed by an coprocessor#Intel coprocessors chip 8087....
 family, was to speed up computations on demanding applications involving floating point
Floating point

In computing, floating point describes a system for numerical representation in which a String of digits represents a rational number.The term floating point refers to the fact that the radix point can "float": that is, it can be placed anywhere relative to the Significant figures of the number....
 command mathematics.






Discussion
Ask a question about 'Intel 8087'
Start a new discussion about 'Intel 8087'
Answer questions from other users
Full Discussion Forum



Recent Posts









Encyclopedia


Intel C8087
The 8087 was the first math coprocessor
Coprocessor

A coprocessor is a computer processor used to supplement the functions of the primary processor . Operations performed by the coprocessor may be floating point arithmetic, graphics, signal processing, string processing, Savitsky-Golay derivation, or encryption....
 for 16 bit processors designed by Intel (the I8231 was older but designed for the 8 bit Intel 8080
Intel 8080

The Intel 8080 was an early microprocessor designed and manufactured by Intel. The 8-bit microprocessor was released in April 1974 running at 2 megahertz , and is generally considered to be the first truly usable microprocessor....
); it was built to be paired with the Intel 8088
Intel 8088

The Intel 8088 is an Intel x86 microprocessor based on the Intel 8086, with 16-bit registers and an 8-bit external data bus. It can address up to 1 megabyte of random access memory....
 and 8086
Intel 8086

The 8086 is a 16-bit microprocessor chip designed by Intel and introduced on the market in 1978, which gave rise to the x86 architecture. Intel 8088, released in 1979, was essentially the same chip, but with an external 8-bit bus , and is notable as the processor used in the original IBM PC....
 microprocessors. The purpose of the 8087, the first of the x87
X87

x87 is a math-related instruction subset of the x86 architecture of Central processing unit. It is so called because initially such instructions were processed by an coprocessor#Intel coprocessors chip 8087....
 family, was to speed up computations on demanding applications involving floating point
Floating point

In computing, floating point describes a system for numerical representation in which a String of digits represents a rational number.The term floating point refers to the fact that the radix point can "float": that is, it can be placed anywhere relative to the Significant figures of the number....
 command mathematics. The performance enhancements went from 20% to 500% depending on the specific application. The 8087 could perform about 50 kFLOP
Flop

Flop may refer to:...
/s, depending on the operation performed.

This coprocessor introduced about 60 new instructions available to the programmer, their mnemonic
Mnemonic

A mnemonic device is a memory aid. Commonly met mnemonics are often verbal, something such as a very short poem or a special word used to help a person remember something, particularly lists, but may be visual, kinesthetic or auditory....
s all beginning with "F" to differentiate them from the standard 8086/88 integer math instructions. For example, in contrast to ADD/MUL, the 8087 provided FADD/FMUL. In binary format, all new instructions began with the bit pattern 11011, decimal 27, the same as the ASCII
ASCII

American Standard Code for Information Interchange , is a coding standard that can be used for interchanging information, if the information is expressed mainly by the written form of English words....
 ESCAPE character, and so are sometimes referred to as "escape opcodes".

The 8087 (and, in fact, the entire x87 family) does not provide a freely addressable, linear register
Processor register

In computer architecture, a processor register is a small amount of Computer storage available on the CPU whose contents can be accessed more quickly than storage available elsewhere....
 set such as the AX/BX/CX/DX registers of the 8086/88 and 80286 processors -- the x87 registers are structured in some form of stack
Call stack

In computer science, a call stack is a dynamic Stack data structure that stores information about the active subroutines of a computer program....
 (although it is not exactly like a typical stack
Stack (data structure)

In computer science, a stack is an abstract data type and data structure based on the principle of LIFO . Stacks are used extensively at every level of a modern computer system....
 data structure) ranging from ST0 to ST7. The floating point instructions of the 80x87 coprocessors operate by popping and pushing values onto this stack.

When Intel designed the 8087 it aimed to make a standard floating point format for future designs. In fact, one of the most successful things from a historical perspective of this coprocessor was the introduction of the first floating point standard for the x86 PCs: the IEEE 754 (although the Intel 8087 does not implement the eventual IEEE 754 standard in all its details, as the standard wasn't finished until 1985; the first Intel Coprocessor to implement it completely was the 80387). The 8087 provided two basic 32
Single precision

In computing, single precision is a computer numbering format that occupies one storage location in computer memory at a given address. A single-precision number, sometimes simply a single, may be defined to be an integer, fixed point, or floating point....
/64-bit
Double precision

In computing, double precision is a computer numbering format that occupies two adjacent storage locations in computer memory. A double precision number, sometimes simply called a double, may be defined to be an integer, fixed point, or floating point....
 floating point data types and an additional extended 80-bit
Extended precision

The term "extended precision" refers to storage formats for floating point numbers taking advantage of an opportunity not falling in to a regular sequence of single, double and quadruple precision such as 32-bit, 64-bit and 128-bit occupying two, four or eight 16-bit storage words or similar accountancy....
 internal support to improve accuracy over large and complex calculations. Apart from this, the 8087 offered an 80-bit/18-digit packed BCD (binary coded decimal) format and 16, 32 and 64-bit integer data types.

The 8087 differed from subsequent Intel coprocessors in that it was directly connected to the address and data buses. The 8088/86 looked for instructions that commenced with the '11011' sequence and relinquished control to the coprocessor. The coprocessor handed control back once the sequence of coprocessor instructions ended. There was a potential crash problem if the coprocessor instruction failed to decode to one that the coprocessor understood. Intel's later coprocessors did not connect to the buses in the same way, but were handed the instructions by the main processor. This yielded an execution time penalty, but the potential crash problem was avoided because the main processor would ignore the instruction if the coprocessor refused to accept it.

The 8087 was able to work out whether it was connected to a 8088 or a 8086 by monitoring the data bus during the reset cycle.

The 8087, announced in 1980, was superseded by the 80287, 80387DX/SX and the 80487. Intel 80486DX, Pentium
Pentium

Introduced on March 22, 1993, the original Pentium was the first superscalar x86 architecture microprocessor. Its fifth-generation x86 microarchitecture was a direct extension of the 80486 architecture with dual integer pipeline s, a faster FPU unit, wider data bus, and features for further reduced address calculation latency....
 and later processors include a built-in coprocessor on the CPU core.

The 8087 contains 45,000 transistors, 3 micrometre circuit technology (8086
Intel 8086

The 8086 is a 16-bit microprocessor chip designed by Intel and introduced on the market in 1978, which gave rise to the x86 architecture. Intel 8088, released in 1979, was essentially the same chip, but with an external 8-bit bus , and is notable as the processor used in the original IBM PC....
 has 29,000 transistors).

External links