Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Начинающим";
Текущий архив: 2006.05.14;
Скачать: [xml.tar.bz2];

Вниз

Хранение в памяти типа Extended, Real, Double, Float...   Найти похожие ветки 

 
maker ©   (2006-04-23 00:09) [0]

Здраствуйте!
Помогите пожалуйста с таким вопросом. У меня есть переменная типа double или аналогичная вещественного типа, каким образом мне можно её рассомтреть ввиде отдельных байтов, которые хранятся в памяти. Ну собственно мне нужно из получить из из памяти (для double их будет 8, например). Именно те где хранятся знак чила, занк порядка порядок, мантисса и тд.
Для целых чисел это просто: берем byte() от числа, сдвинутого на нужное количество знаков...
Спасибо за ваше внимание моему вопросу.
Буду очень признателен если у вас есть какие либо соображения по поводу моего вопроса.


 
Leonid Troyanovsky ©   (2006-04-23 00:22) [1]


> maker ©   (23.04.06 00:09)  

> Именно те где хранятся знак чила, занк порядка порядок, мантисса и тд.


RTFM: Delphi help: The Double type & etc.

--
Regards, LVT.


 
maker ©   (2006-04-23 00:55) [2]

Ух ты, работает, я и не подумал в лоб читать из памяти!
Спасибо!...

var i:byte;
   d:double;
   b:array [0..7] of byte;
   pb:pbyte;
begin
  d:=3454.34;
  pb:=Pointer(@d);
  for i:=0 to 7 do
  b[i]:=pbyte(Pointer(LongWord(pb)+i))^;
  d:=0;
  for i:=0 to 7 do
  pbyte(Pointer(LongWord(pb)+i))^:=b[i];
  ShowMessage(floattostr(d));
end;



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

Форум: "Начинающим";
Текущий архив: 2006.05.14;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.44 MB
Время: 0.01 c
1-1144235102
Arm79
2006-04-05 15:05
2006.05.14
Call Stack в RunTime


2-1145971001
Ice [greensky]
2006-04-25 17:16
2006.05.14
Как изменить цвет ячейки в stringgrid?


2-1145774100
manevil
2006-04-23 10:35
2006.05.14
Прозрачная панель


2-1145697065
apl
2006-04-22 13:11
2006.05.14
Про TreeView


4-1140431669
Wolfram
2006-02-20 13:34
2006.05.14
Как отловить нажатие alt





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский