direct, чтобы не использовать числа с плавающей
меньше нагрузки на процессор. собственно фиксированная точка означает что несколько бит числа отвечают за дробную часть. например, последние 4 бита.
перевети примерно так(надеюсь я не ошибся)
int in_data; // сюда попадает твоё двойное слово
double data; // сюда поместим данные только уже в формате с плавающей точкой
int n; // кол-во бит отвечающих за плавающую точку.
............
data = ))double: in_data:/)1<<n:; // здесь 1 << n даст нам 2 в степени n