Из статьи:C число с плавающей точкой 0x1.fp3
GNU CC распознает числа»с плавающей точкой, написанные не только в обычной десятичной системе счисления, такие как 1.55e1, но также числа, такие, как 0x1.fp3 записанный в шестнадцатеричном формате. В этом формате обязательные значения указаны в шестнадцатеричном представлении и поле экспоненты p или P. Показатель представляет собой десятичное число, которое указывает мощность 2, по которой будет умножаться значительная часть. Таким образом, 0x1.f 1 15/16, p3 умножает его на 8, а значение 0x1.fp3 совпадает с 1,55e1. "
Кажется, что 0x1.fp3 оценивается как = (1 + 15/16) * 2^3
Откуда вышло 15/16?
Онлайн-ссылка для шестнадцатеричного формата с плавающей запятой: http://www.exploringbinary.com/hexadecimal-floating-point-constants/ –
@RudyVelthuis исправлено –