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

441 · Ken Shirriff · May 30, 2026, 5:23 p.m.
Summary
This blog post dives into the microcode of the Intel 8087 floating-point chip, particularly focusing on the FXCH (Floating-point Exchange) instruction. It details the intricate working of the microcode, which consists of 14 micro-instructions, and explains the structure of floating-point registers and errors caused by operations on empty registers. The author shares personal insights from reverse-engineering efforts with the Opcode Collective, including image analysis of the chip's microcode ROM. Overall, the post serves as a technical exploration of a historically significant piece of hardware, highlighting its interesting architecture and computing techniques.