Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2005.01.02;
Скачать: CL | DM;

Вниз

Дйствительное число с плавающей запятой   Найти похожие ветки 

 
revo   (2004-12-17 13:53) [0]

Подскажите пожалуиста как преобразовать нормализованное число в форме с плавающей точкой из машинного вида в арифметический? Например по модемному каналу приходит посылка (hex) $00 $00 $48 $42. Точно знаю, что это число 50.0. Формат такой: сначала 3-и байта(первый младший) - мантисса, 4-ый байт - порядок (старший разряд в нём - знак).
Помогите, задолбался я уже.


 
Digitman ©   (2004-12-17 14:04) [1]


> из машинного вида


машины разные бывают.

бывает Intel, бывает Motorola, бывает AntilopaGnu ..

и каждая вольна хранить такие числа в своем внутреннем представлении, даже если существует какой-то там IEEE


> в арифметический


а это как ?


> $00 $00 $48 $42. Точно знаю, что это число 50.0


откуда знаешь-то ?

если ты сделал, к примеру, следующее :

var
 Posylka: array[0..3] of Byte = ($00, $00, $48, $42);
..

ShowMessage(FloatToStr(PSingle(@Posylka)^);

и увидел сообщение с изображением числа "50", то умозаключение должно было последовать само собой ... и вопрос бы твой не возник вообще ...


 
begin...end ©   (2004-12-17 14:22) [2]

> [1] Digitman ©   (17.12.04 14:04)

> ShowMessage(FloatToStr(PSingle(@Posylka)^)

А разве нельзя вот так: ShowMessage(FloatToStr(Single(Posylka))) ?


 
Digitman ©   (2004-12-17 14:41) [3]


> begin...end ©   (17.12.04 14:22) [2]


в ДАННОМ случае можно и так - компилятор поймет и простит)

хотя вариант с явным приведением типа через указ.тип наглядней.

но суть-то не в этом..



Страницы: 1 вся ветка

Текущий архив: 2005.01.02;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.027 c
9-1094025077
MonoLife
2004-09-01 11:51
2005.01.02
Получилась игруха...


4-1100857143
Antiloop
2004-11-19 12:39
2005.01.02
Мастера! есть сервис, который показывает форму, но дело в том,


14-1102509436
Alexander Panov
2004-12-08 15:37
2005.01.02
Победа Януковича. Противостояние. (продолжение. Часть 3)


3-1101997033
zunder
2004-12-02 17:17
2005.01.02
обновление detail - таблицы


14-1102777344
Gusto
2004-12-11 18:02
2005.01.02
ASMEdit 3.5 - GUI-оболочка ассемблера.