Open In App

Data Formats of 8087

Last Updated : 14 May, 2023
Improve
Improve
Like Article
Like
Save
Share
Report

The 8087 is basically known as the Numeric Data Processor, but it’s also called a Math Co-processor. 8087 numeric data processor is also known as the Floating point unit. The 8087 is a co-processor that was designed to work with the Intel 8086/8088 microprocessors. It was used to enhance the performance of floating-point operations on these processors.

The 8087 consists of two major parts:

  • Control Unit: This block is used to synchronize tasks between the main and coprocessors. The control unit receives the instruction’s opcode, then decodes the instruction’s opcode, and reads or writes the operands from memory. The control unit provides communication between the processor and memory.
  • Numeric Execution Unit (NEU): The Control Unit (CU) consists of a data bus buffer, status, and control registers, and the Numeric Processing Unit (EU) consists of a stack of eight data registers, a microcode control unit, and programmable shifters. This block duplicates the functions performed by the microprocessor control unit and ALU.

8087 Data Formats

The 8087 mainly support these kinds of data format as listed –

  • 1. Packed decimal numbers – The 8087 co-processor supports the decimal numbers which are applied to solve applied numerical methods and operation research maths. it’s used in many calculation-based applications where decimal precise decimal arithmetic is required. 
  • 2. Binary Integers – The data numeric coprocessor is always relevant to the binary integer. it specifies the fixed number in bits form like integer 8 to 64 bits depending on the specific applications. in terms of the math process, it supports the signed bit and the unsigned binary integer.
  • 3. Temporary real format – 8087 is capable to store the values of the results during the floating point arithmetic operation. the temporary real format is a kind of data format of the coprocessor. the floating point numbers in memory represent the 80 bits of memory that consisting a sign bit.
  • 4. Real numbers – The 8087 co-processor has some basic functionality to perform the arithmetic operation on the double points and floating points which represent the operations on floating point numbers. the 8087 processor supports the three main floating numbers such as single, double, and extended precision.

Instruction Set of 8087 

So the 8087 introduces some instruction set to operate some arithmetic logical operations. These instructions are fetched by the 8086 and executed by the 8087. Execution of the 8087 instruction set is transparent to the programmer. When the 8086 encounters an 8087 instruction, it executes the ESCAPE instruction code to bypass the instruction opcode and transfer control of the local bus to the 8087 coprocessor. The 8087 instruction set is listed below. 

  • Data Transfer Instructions
  • Arithmetic Instructions
  • Floating-Point Data Transfer Instructions
  • Processor Control Instructions
  • Arithmetic Instructions etc.

Applications of 8087 

The 8087 provides functions designed specifically to meet high-performance digital processing requirements. The trigonometric, logarithmic, and exponential functions of them are built into the coprocessor hardware. These functions are essential in scientific, engineering, navigational, or military applications. The 8087 also has features for business computing or business. The 8087 can handle binary coded decimal (BCD) numbers up to 18 bits, with rounding errors.

  • 8087 is supporting the programming language, it can write the high-level language for 8086/8088 systems.
  • The 8087 math coprocessor architecture is designed for high-performance numeric computing with general-purpose processing.

Usage in real-world applications

Some specific examples of applications that use the 8087 include:

  • CAD/CAM software: Many computer-aided design and computer-aided manufacturing software packages rely on the 8087 to perform complex geometric calculations.
  • Physics simulations: The 8087 is used in simulations of physical systems, such as simulations of fluid dynamics, electromagnetism, and quantum mechanics.
  • Financial calculations: The 8087 is used in financial applications, such as accounting software and stock market analysis tools, to perform complex calculations involving interest rates, exchange rates, and other financial metrics.
  • Medical imaging: The 8087 is used in medical imaging applications, such as MRI and CT scans, to perform calculations on the data generated by these imaging systems.

Limitations and drawbacks

Although the 8087 co-processor is a powerful tool for performing high-precision numerical calculations, it does have some limitations and drawbacks. Some of these include:

  • Cost: The 8087 co-processor was an expensive add-on to the Intel 8086/8088 microprocessors, which limited its adoption in many applications.
  • Compatibility: The 8087 was only compatible with certain microprocessors, which limited its use to systems that were specifically designed to work with it.
  • Power consumption: The 8087 co-processor required a significant amount of power to operate, which could limit its use in systems that had limited power supplies.
  • Programming complexity: The 8087 co-processor required specialized programming techniques to fully utilize its capabilities, which could make it difficult for some developers to use effectively.

Like Article
Suggest improvement
Share your thoughts in the comments

Similar Reads