Sometimes Computers Make Mistakes: Reproducing That $475,000,000 Bug
A hands-on demonstration of the infamous Intel Pentium FDIV bug on original hardware, showing how a lookup table error in the SRT-4 division algorithm cost Intel $475 million.
I know the topic of bugs that changed the world has been beaten to death so thoroughly that there's nothing left of it. But here's the thing: most people just retell the same story over and over. Very few have actually reproduced the bug on real hardware. Today, we're going to do exactly that.
The Essence of the Bug
The Intel Pentium contained a floating-point division error. On certain number combinations, the coprocessor produced incorrect division results. These problematic pairs were relatively rare, making detection difficult initially. However, once discovered, Intel faced massive financial consequences — ultimately costing the company hundreds of millions of dollars in replacement costs and reputation damage.
Not all number pairs were affected. The error manifested sporadically, making diagnosis challenging. Intel later distributed commemorative epoxy-encased processor samples to employees — a grim souvenir of one of the most expensive hardware bugs in history.
A Bit About Division in the Pentium
The bug originated from Intel's transition to the faster SRT (Sweeney, Robertson, Tocher) division algorithm, replacing the older shift-and-subtract method. The Pentium implemented SRT-4 (Radix 4), where lookup table cells could hold five values: -2, -1, 0, +1, and +2.

The lookup table was based on the high-order bits of the dividend and divisor. It was implemented as a programmable logic matrix rather than ROM. Some table entries were left empty — 16 problematic cells total, though only 5 actually produced incorrect results. The root cause was incorrectly omitted transistors in the needed positions.

Hardware Review
For this experiment, I used the following test configuration:
- Motherboard: A-Trend ATC-1000 (i430FX "Triton" chipset)
- Primary processor: Intel Pentium A80502-100 (100 MHz, ceramic package, gold-plated pins)
- Comparison processor: A later Pentium variant without the defect
- RAM: 2 × 16 MB modules
- Video: SiS 6202 PCI card
- OS: Windows 98
- Storage: Hard drive with a pre-installed system



The system helpfully reported the presence of the FDIV bug in its properties:


Important warning: Different Pentium generations required different voltages. Swapping CPUs without adjusting motherboard jumpers risked damaging components.
Running the Test
First, let's verify with the working processor. The classic test formula is:
(4195835 / 3145727) × 3145727 − 4195835With a correct FPU, this should return exactly 0.




Result: 0. Perfect. Now let's swap in the defective processor.


The Bug in Action
Running the same calculation on the defective processor:
(4195835 / 3145727) × 3145727 − 4195835 = -256
Instead of zero, we get -256. The bug is alive and well, reproduced on actual vintage hardware over 30 years after it was first discovered.
What Happened in the End?
In reality, far from all numbers divided incorrectly. The pair shown here is just one of relatively few combinations that produce wrong results when divided. The insidious nature of the error lay precisely in its rarity — typical users were unlikely to encounter it in everyday work. But for scientific and financial computations, even rare errors are unacceptable.
Intel ultimately capitulated and offered free processor replacements to anyone who requested one. The total cost to the company reached approximately $475 million. Today, defective Pentium chips have become collector's items — a tangible reminder that even the most advanced hardware can harbor subtle, expensive mistakes.