float64frombytes

Функция получения числа с плавающей запятой (float) по восьми байтам

Синтаксис

a_fl = float64frombytes(b_int);

Аргументы

Имя Тип данных Описание
b_int integer Восемь байтов, представленные в виде целого числа

Описание

float64frombytes – функция позволяет получить число float, согласно стандарту IEEE-754, из целого числа b_int полученного путем "склеивания" восьми байтов данных. Для этого могут использоваться операции включения битов ( or) и побитового сдвига (shl, shr). Функция работает только в 64-битной версии программы.

Результат

Имя Тип данных Описание
a_fl double Функция возвращает вещественное число, соответствующее типу double в стандарте IEEE-754.

Пример

var d: integer,d1: integer,d2: integer,d3: integer,
    d4: integer,d5: integer,d6: integer,d7: integer,
    a1: integer,a2: integer,a3: integer,a4: integer,
    a5: integer,a6: integer,a7: integer,a8: integer;

a1 = 195; //1100 0011 старший байт 
a2 = 65;  //0100 0001 
a3 = 255; //1111 1111
a4 = 235; //1110 1011 
a5 = 101; //0110 0101
a6 = 77;  //0100 1101 
a7 = 98;  //0110 0010 
a8 = 255; //1111 1111 младший байт

d1 = a1 shl 8; //берем старший байт и освобождаем место для более младшего 
d  = d1 or a2; //включаем более младшие биты и т.д. 
d2 = d shl 8; 
d = d2 or a3; 
d3 = d shl 8; 
d  = d3 or a4; 
d4 = d shl 8; 
d  = d4 or a5; 
d5 = d shl 8; 
d  = d5 or a6; 
d6 = d shl 8; 
d  = d6 or a7; 
d7 = d shl 8; 
d  = d7 or a8; //итоговое число типа int64

a_fl = float64frombytes(d); 

В результате выполнения скрипта происходит формирование числа типа int64 из восьми байтов данных, после чего из данного числа происходит формирование числа типа float64.

Дополнительные материалы

Нет.