Get the latest tech news

Minor 387 Documentation Mystery


So here I am, writing a bit of test code to figure out the behavior of x87 FPUs with regard to saving and loading the FPU state (FSTENV/FLDENV and FSAVE/FRSTOR instructions in different modes and formats). The original real-mode only 8087 state format included the instruction and operand pointers as 20-bit linear addresses (because $REASONS) and also stored 11 bits of the floating-point (FP) opcode; the remaining five were always the ESC instruction.

So here I am, writing a bit of test code to figure out the behavior of x87 FPUs with regard to saving and loading the FPU state (FSTENV/FLDENV and FSAVE/FRSTOR instructions in different modes and formats). I had the Intel 231920-003 datasheet from October 1987 (80387 80-BIT CHMOS III Numeric Processor Extension) on hand, but no luck, so to speak… the floating-point opcode was right there (at offset 12h). It’s now clear that the FP opcode field was not part of the 32-bit protected-mode FPU state in the original 80387 specification.

Get the Android app

Or read this on Hacker News

Read more on:

Photo of Minor

Minor

Related news:

News photo

Apple Preparing Minor iOS 17.5.2 Update for iPhone