Knowledge is knowledge

8087 Math Co-Processor

 What is a co-processor?

  • A co-processor is a specially designed circuit on a microprocessor chip that can perform the same task very quickly that the microprocessor performs.
  • The main advantage of a co-processor is it reduces the workload of the main processor.
  • Co-processors share the same memory, I/O system, bus control, and clock generator.
  • The co-processor handles specialized tasks like mathematical calculation, graphical display on the screen, etc.


8087 co-processor

  • It was the first math co-processor designed by Intel to pair with 8086/8088 resulting in the easier and faster calculation.
  • The purpose of 8087 was to speed up the computation involving floating point calculation.
  • 8087 math co-processor is also known as Numeric Data Processor (NDP), Numeric Processor Extension (NPX), Floating Point Unit (FPU)


Features of 8087

  • This increase the overall speed and system performance of the entire system.
  • Addition, subtraction, multiplication, and division of simple numbers are not the coprocessor's job.
  • It does all the calculations involving floating point numbers like scientific calculation and algebraic functions.
  • Having a co-processor, which performs all the calculations, can free up a lot of CPU time.
  • This would allow the CPU to focus all of its resources on the other functions it has to perform.
  • It follows IEEE floating point standards.
  • This co-processor introduced about 60 new instructions available to the programmers.
  • All the mnemonics begin with 'F' to differentiate them from the standard 8086 instructions. e.g.FADD, FMUL.
  • If an instruction is an ESC-type instruction then the co-processor executes it else the microprocessor executes it.
  • 8087 can work on integers, decimals, real, and floating point numbers.
  • It is capable of doing complex arithmetic and trigonometric calculations.
  • It is basically a secondary processor it has its own architecture and instruction set.


Why Math co-processors?

  • Floating point operations are complex math operations that required large registers, complex circuits, and an area on the chip.
  • A general processor avoids this much burden and delays such operation to a co-processor designed specifically for this purpose e.g. 8087 math co-processor for 8086 microprocessor.


Data types supported by 8087

  • Binary Integers,
  • Packed decimal numbers
  • Real numbers
  • Temporary real format.

 Next:  Architecture of 8087











Share: