Вверх ↑
Этот топик читают: Гость
Ответов: 321
Рейтинг: 10
#1: 2015-08-26 10:28:36 ЛС | профиль | цитата
Привет ребята...
Возможно ли перевести float в 4 Byte систему в hiasm ?!
Нашел пример делфи: http://valeev.org.ru/index.php?art=30 ,но это не для моего ума :

карма: 1

0
Ответов: 4630
Рейтинг: 749
#2: 2015-08-26 11:01:03 ЛС | профиль | цитата
code_36190.txt
Правда, не понял вопроса. По указанному примеру переводится "из 4 байт в float".
карма: 26

1
файлы: 1code_36190.txt [4KB] [519]
Голосовали:Master4eG
Ответов: 321
Рейтинг: 10
#3: 2015-08-26 11:17:17 ЛС | профиль | цитата
Не хочет компить :\
C:\Program Files (x86)\HiAsm\Elements\delphi\code\WinLayout.pas(40) Hint: Private symbol '_onObjDestroy' declared but never used
C:\Program Files (x86)\HiAsm\Elements\delphi\code\hiInlineCode_387AEF0.pas(109) Error: ';' expected but '*' found
C:\Program Files (x86)\HiAsm\Elements\delphi\code\hiInlineCode_387AEF0.pas(109) Error: ',' or ')' expected but '-' found
C:\Program Files (x86)\HiAsm\Elements\delphi\code\hiInlineCode_387AEF0.pas(109) Error: ';' expected but ')' found
etc..
карма: 1

0
Ответов: 4630
Рейтинг: 749
#4: 2015-08-26 11:22:51 ЛС | профиль | цитата
Попробуй другим браузером скачать или проверь кодировку.
карма: 26

0
Ответов: 321
Рейтинг: 10
#5: 2015-08-26 11:26:27 ЛС | профиль | цитата
Попробовал.
[flood]Подготовка к сборке проекта...
Генерация кода целевого языка
Компоновка проекта...
Command line: dcc32.exe "C:\Program Files (x86)\HiAsm\Elements\delphi\code\Project4.dpr" "-U \Users\lavka86.ru\Projects\." -Q
Borland Delphi Version 12.0 Copyright (c) 1983,98 Inprise Corporation

C:\Program Files (x86)\HiAsm\Elements\delphi\code\WinLayout.pas(159) Warning: Variable 'd' might not have been initialized

C:\Program Files (x86)\HiAsm\Elements\delphi\code\WinLayout.pas(176) Warning: Variable 'd' might not have been initialized

C:\Program Files (x86)\HiAsm\Elements\delphi\code\WinLayout.pas(40) Hint: Private symbol '_onObjDestroy' declared but never used

C:\Program Files (x86)\HiAsm\Elements\delphi\code\hiInlineCode_387B160.pas(109) Error: Identifier redeclared: 'Result'

C:\Program Files (x86)\HiAsm\Elements\delphi\code\hiInlineCode_387B160.pas(109) Error: ',' or ':' expected but '(' found

C:\Program Files (x86)\HiAsm\Elements\delphi\code\hiInlineCode_387B160.pas(109) Error: ';' expected but '*' found

C:\Program Files (x86)\HiAsm\Elements\delphi\code\hiInlineCode_387B160.pas(109) Error: ',' or ')' expected but '-' found

C:\Program Files (x86)\HiAsm\Elements\delphi\code\hiInlineCode_387B160.pas(109) Error: ';' expected but ')' found

C:\Program Files (x86)\HiAsm\Elements\delphi\code\hiInlineCode_387B160.pas(109) Error: ',' or ':' expected but ';' found

C:\Program Files (x86)\HiAsm\Elements\delphi\code\hiInlineCode_387B160.pas(112) Error: Type expected but 'END' found

C:\Program Files (x86)\HiAsm\Elements\delphi\code\hiInlineCode_387B160.pas(114) Error: '.' expected but ';' found

C:\Program Files (x86)\HiAsm\Elements\delphi\code\hiMainForm_481F480.pas(9) Fatal: Could not compile used unit 'hiInlineCode_387B160.pas'
Сборка завершена.
[/flood]
карма: 1

0
Ответов: 4630
Рейтинг: 749
#6: 2015-08-26 11:34:46 ЛС | профиль | цитата
num to float.7z

Вот строки 109-114:
Нет там ничего из того, что пишет

[offtop]В таких случаях скачивать нужно через "Сохранить по ссылке как", либо, если схема открывается в браузере и копируется в буфер обмена - после открытия поставить кодировку Windows-1251[/offtop]

карма: 26

0
файлы: 1dfsfsdfh.jpg [21.1KB] [576]
Ответов: 321
Рейтинг: 10
#7: 2015-08-26 11:41:31 ЛС | профиль | цитата
Спасибо огромное, с трех браузеров попробовал. Сейчас все работает.
А реверс нельзя осуществить ?!
карма: 1

0
Ответов: 4630
Рейтинг: 749
#8: 2015-08-26 11:44:30 ЛС | профиль | цитата
А как сформулировать эти преобразования? Что собой представляет то целое число?
карма: 26

0
Ответов: 321
Рейтинг: 10
#9: 2015-08-26 12:05:06 ЛС | профиль | цитата
В моем случае это значение храниться в адресе памяти одного процесса.
И формат его именно этот непонятный float.
ProcMemory читает адрес в Byte, 2 Bytes, 4 Bytes как я понимаю, следовательно я не понимаю сколько целых в float. Теперь могу понимать, благодаря схеме выше, но для корректировки значения на свое fail.
[flood]Binary
Byte
2 Bytes
4 Bytes
8 Bytes
Float
Double[/flood]
карма: 1

0
Ответов: 8926
Рейтинг: 823
#10: 2015-08-26 12:45:33 ЛС | профиль | цитата
Master4eG, на всякий случай картинка для ясного представления о формате
32_64_real.jpg
И, тоже на всякий случай, DataToFileEx от Galkov-а, где этот формат можно читать из файла. datatofile_ex.rar
карма: 19

0
файлы: 232_64_real.jpg [56.9KB] [599], datatofile_ex.rar [3KB] [213]
Ответов: 4630
Рейтинг: 749
#11: 2015-08-26 12:52:00 ЛС | профиль | цитата
При таком раскладе весь тот алгоритм описывается 2-мя строчками кода.
num to float 2.7z
карма: 26

0
Ответов: 321
Рейтинг: 10
#12: 2015-08-26 13:18:41 ЛС | профиль | цитата
Леонид спасибо, но я уже с ума схожу потихоньку с этим float. Как будто в матрице живу
Числа с плавающей запятой используют формат IEEE (Института инженеров по электротехнике и электронике). Значения с одиночной точностью и типом float имеют 4 байта, состоят из бита знака, 8-разрядной двоичной экспоненты excess-127 и 23-битной мантиссы. Мантисса представляет число от 1,0 до 2,0. Поскольку бит высокого порядка мантиссы всегда равен 1, он не сохраняется в числе. Это представление обеспечивает для типа float диапазон примерно от 3,4E–38 до 3,4E+38.
...https://msdn.microsoft.com/ru-ru/library/hd7199ke.aspx
Netspirit спасибо большое! Вроде значения сходятся
карма: 1

0
12
Сообщение
...
Прикрепленные файлы
(файлы не залиты)