В 1980 году Intel 8087 стал первым массовым математическим сопроцессором компании и заложил основу для современных вычислений с плавающей точкой. Сегодня его уже не встретить в компьютерах, но внутри этого чипа скрыта интересная инженерная история: сложные операции выполнялись с помощью микрокода, записанного в собственном ПЗУ.
В этой статье разберём, как устроен микрокод одной из инструкций 8087 — FXCH, которая меняет местами значения в стековых регистрах. На первый взгляд операция кажется простой, но внутри она превращается в последовательность из 14 микроинструкций с проверкой тегов, обработкой исключений и обменом данных через временные регистры. Посмотрим, как исследователи восстановили эту логику по фотографиям кристалла и что можно узнать о внутреннем устройстве процессора спустя десятилетия после его выхода.