Table of contents

IEEE-754 Floating-Point Formats (x86)

This page summarizes IEEE-754 binary floating-point formats as implemented on Intel x86 CPUs up to Core 2.

Intel x86 supports:

Intel CPUs do not implement IEEE quad (128-bit) precision in hardware.

Binary32 (Single Precision, 32-bit)

Bit layout

+----+------------------+----------------------+
| S  |   Exponent (8)   |    Fraction (23)     |
+----+------------------+----------------------+
31  30                23 22                  0

Special values

Binary64 (Double Precision, 64-bit)

Bit layout

+----+----------------------+----------------------------------------+
| S  |   Exponent (11)      |           Fraction (52)                 |
+----+----------------------+----------------------------------------+
63  62                    52 51                                      0

Special values

x87 Extended Precision (80-bit)

Bit layout

+----+----------------------+--+--------------------------------------+
| S  |   Exponent (15)      |J |           Fraction (63)               |
+----+----------------------+--+--------------------------------------+
79  78                    64 63                                      0

Special values

Intel x86 Notes

Summary

This project is an independent, unofficial work based on publicly available information and reverse-engineering research, and is not affiliated with, endorsed by, sponsored by, or associated with Intel Corporation or its affiliates. It is provided "as is", without warranty of any kind. The author assumes no responsibility or liability for any use, misuse, damage, data loss, hardware failure, or other consequences arising from its use. Intel, Pentium, Core and related trademarks are the property of their respective owners and are used solely for identification and informational purposes.
  • index page
  • uop description
  • ADC
  • ADD
  • AND
  • BSF
  • BSR
  • BSWAP
  • BTEST
  • DIV
  • FANDNOT
  • FCALCTW
  • FCMOV
  • FCOM
  • FMERGE
  • FMOV
  • FPEXTRACT
  • FPORDATATYPE
  • FPSIGNEXT
  • FREADROM
  • FXORS
  • IDIV
  • IMUL
  • INTEXTRACT
  • LEA
  • LOAD
  • MOVE
  • MOVEFROMCREG
  • MOVETOCREG
  • MUL
  • OR
  • PORTIN
  • PORTOUT
  • RCL
  • RCR
  • RDSEGFLD
  • ROL
  • ROR
  • SAL
  • SAR
  • SBC
  • SHL
  • SHR
  • SIGEVENT
  • STA
  • STRD
  • SUB
  • SUBR
  • TRANSPORTUIP
  • UOP
  • U_JCC
  • U_JMP
  • U_JMP_INDIR
  • WRSEGFLD
  • WUCONCAT
  • WUEXTRBK
  • WUINSERT
  • WUMERGE
  • XOR