Форум по Delphi программированию

Delphi Sources



Вернуться   Форум по Delphi программированию > Все о Delphi > Синтаксис
Ник
Пароль
Регистрация <<         Правила форума         >> FAQ Пользователи Календарь Поиск Сообщения за сегодня Все разделы прочитаны

Ответ
 
Опции темы Поиск в этой теме Опции просмотра
  #1  
Старый 27.12.2010, 00:26
us5mch us5mch вне форума
Прохожий
 
Регистрация: 07.05.2010
Сообщения: 6
Репутация: 10
По умолчанию Дробные числа в HEX формате

4 байтные числа равны дробным соответственно:
3C23D70A = 0.01
3CA3D70A = 0.02

402CCCCD = 2.69 и т.д. Так же числа могут быть отрицательными, тогда они начинаются с 8 или 9 это мне извесно точно. Программа ArtMoney перекодирывает их именно так, но вот вопрос как получить эти результаты в ДЕЛФИ. С целыми числами понятно, а вот с дробными да ещё и отрицательными . Может кто подскажет, а то я в тупике.
Ответить с цитированием
  #2  
Старый 27.12.2010, 07:27
Аватар для BoRoV
BoRoV BoRoV вне форума
Начинающий
 
Регистрация: 08.09.2008
Сообщения: 193
Репутация: 12694
По умолчанию

Код:
var
  r: real;
  i: integer;
begin
  // присваиваем переменой значение, т.е. заносим в ячейку памяти значение
  i := $402CCCCD;
  asm
    // загружаем с этой ячейки в FPU регист наше значение как число с плавающей точкой
    fld i
    // сохраняем с этого регистра с последующем его освобождением наше уже значение в виде числа с плавающей точкой
    fstp r
  end;
  ShowMessage(FloatToStr(r));
end;

FPU регистры существуют для работы с числами с плавающей точкой размерностью до 80 бит (10 байт). С их помощью можно выполнять кроме простых арифметических действий такие как считать тригонометрические функции, логарифмы и прочее.
__________________
Меня греют ваши плюсы к моей репутации...

Последний раз редактировалось BoRoV, 28.12.2010 в 17:12.
Ответить с цитированием
  #3  
Старый 27.12.2010, 16:17
us5mch us5mch вне форума
Прохожий
 
Регистрация: 07.05.2010
Сообщения: 6
Репутация: 10
По умолчанию

Да, гениальное всё просто, мне учится и учится
Большое спасибо!!
Ответить с цитированием
  #4  
Старый 28.12.2010, 09:52
Аватар для Thrasher
Thrasher Thrasher вне форума
Illuminati
 
Регистрация: 06.03.2008
Адрес: Крым, г. Симферополь
Сообщения: 348
Репутация: 8808
По умолчанию

2 Borov

А можно код откоментировать? А то мне интересно как это работает.
__________________
Хорошо написанная программа не требует документации
ICQ 9-184-668.
Ответить с цитированием
  #5  
Старый 28.12.2010, 23:13
Аватар для Thrasher
Thrasher Thrasher вне форума
Illuminati
 
Регистрация: 06.03.2008
Адрес: Крым, г. Симферополь
Сообщения: 348
Репутация: 8808
По умолчанию

Спасибо Все понятно.
__________________
Хорошо написанная программа не требует документации
ICQ 9-184-668.
Ответить с цитированием
Ответ


Delphi Sources

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск
Опции просмотра

Ваши права в разделе
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы не можете редактировать сообщения

BB-коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.
Быстрый переход


Часовой пояс GMT +3, время: 18:03.


 

Сайт

Форум

FAQ

RSS лента

Прочее

 

Copyright © Форум "Delphi Sources" by BrokenByte Software, 2004-2023

ВКонтакте   Facebook   Twitter