PDP-11 использовал представление со смешанным порядком байтов для чисел с плавающей запятой. так что эта часть кода
uFloat.pdp11 = (input.word[0] << 16) + input.word[1];
правильно, если ваши данные еще не были поменяны местами до того, как вы их получили.
В этом документе приведены подробные сведения о множестве различных форматов с плавающей запятой http://www.quadibloc.com/comp/cp0201.htm
В нем говорится, что t PDP-11 / VAX использовал избыточные 128 обозначений для показателя степени. в то время как IEEE 754 использует избыточную запись 126, поэтому, если она верна, деление на 4 кажется правильным способом корректировки показателя степени.
Однако , Википедия говорит, что смещение экспоненты для IEEE 754 равно 127, а не 126. Так что либо в приведенном выше документе используется странная запись, либо он неверен. Возможно, вам нужно разделить на 2, а не на 4.