Microcode inside the Intel 8087 floating-point chip: register exchange

A 1980s math chip swap turns into catnip for nerds with a free weekend

TLDR: Ken Shirriff revealed that a simple “swap two values” action inside Intel’s 1980 8087 math chip actually needs 14 hidden steps, showing how intricate early computer design really was. In the comments, the main reaction was pure delight: readers treated the post like irresistible rainy-day nerd entertainment.

A dusty old chip from 1980 just became weekend drama bait for computer-history fans. In a new post on Ken Shirriff’s blog, the famous reverse-engineering sleuth cracks open Intel’s 8087 math helper chip and shows that one supposedly simple command — basically, “swap these two numbers” — secretly takes 14 tiny internal steps to pull off. Translation for non-specialists: even the "easy" stuff inside early chips was wildly elaborate, and that’s exactly the kind of detail that sends this crowd into a delighted spiral.

The comments are small in number here, but the vibe is loud. Ken himself strolls in with a casual “Author here” energy, instantly giving the thread that VIP backstage-pass feel. Then user trollbridge delivers the most relatable reaction of the day: this kind of post is the perfect trap for a quiet afternoon, the sort of link that politely steals the next two hours of your life while you were supposed to be doing literally anything else. That’s the big mood: no outrage, no flame war, just full-on geek surrender.

And honestly, that’s the funniest part. The “drama” isn’t people fighting — it’s readers joking that a microscope photo of an ancient chip has somehow become premium entertainment. A rainy Saturday, kids asleep, one extremely detailed teardown of forgotten silicon: the nerds are feasting.

Key Points

  • Intel introduced the 8087 floating-point coprocessor in 1980, and the article says it accelerated floating-point operations by up to 100 times.
  • The article focuses on reverse-engineering the microcode for the 8087's FXCH instruction, which exchanges two floating-point registers.
  • Shirriff states that FXCH requires 14 micro-instructions internally, despite appearing simple at the programmer-visible instruction level.
  • The 8087 die includes a central microcode ROM, a microcode engine, and a datapath split into a 16-bit exponent path and a 64-bit fraction/significand path.
  • The chip has two temporary registers and eight stack registers with tag bits, while its microcode ROM contains 1,648 micro-instructions that are 16 bits long.

Hottest takes

"Author here" — kens
"nothing quite as fun as a righto.com link" — trollbridge
"There goes my next hour or two" — trollbridge
Made with <3 by @siedrix and @shesho from CDMX. Powered by Forge&Hive.