![]() |
|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
![]() |
|
Опции темы | Поиск в этой теме |
![]() |
#1 |
Пользователь
Регистрация: 14.09.2007
Сообщений: 16
|
![]()
Простите, неправильно сформулировала ? !
Надо представить не как строку а представить в виде байт. В общем, получаю данные в виде символьной строки с сом порта. В этой строке и есть числа с плавающими точками. Как привести данные в нормальный вид?
Blondinka это моё мироощущение при програмировании...
|
![]() |
![]() |
![]() |
#2 |
Белик Виталий :)
Старожил
Регистрация: 23.07.2007
Сообщений: 57,097
|
![]()
Приведи пожалуйста пример строки, с плавающим числом.
I'm learning to live...
|
![]() |
![]() |
![]() |
#3 |
Пользователь
Регистрация: 14.09.2007
Сообщений: 16
|
![]()
Ну вот такая примерно:
?y?yI.?.....eU.A8oB<|o0;...B)\.B.®. B..AB?egBazXB..*A..*Ay_??NX3A?.&A?? 8A@$O?.....................?..
Blondinka это моё мироощущение при програмировании...
|
![]() |
![]() |
![]() |
#4 |
Участник клуба
Регистрация: 28.03.2007
Сообщений: 1,814
|
![]()
В формате HEX как правило нет запятых. Обо свех запятых должна позаботится ты в своей программе. Например когда я писал аналогичную прогу для управления контроллером то мы с напарником (он программировал сам контроллер) условились что он передаёт мне число (например 45,2) как 452 двумя байтами (014С), я эти байты "соединяю" в одно число (получаю 452) я делю его на 10 + у нас был ещё один байт который отвечал за деление т.е. если он =FF то я делил число на 10 если 00 то оставлял каак есть + посдсчёт контрольной суммы CRC16. Таким образом тебе не мешало бы знать протокол обмена твоего устройства.
|
![]() |
![]() |
![]() |
#5 |
Белик Виталий :)
Старожил
Регистрация: 23.07.2007
Сообщений: 57,097
|
![]()
ага. ну предположем со второго символа - это real
тогда в переменку типа Real мы заносим эти байты так : move(s[2],r,sizeof(r)); только надо учесть сколько байт - ведь с плавзапятой и real и Double бывают. Тогда просто правильно укажи тип для переменки r, а SizeOf уже вичислит сколько байт начиная с s[2] переложить в r. Verstehen?
I'm learning to live...
|
![]() |
![]() |
![]() |
#6 |
Пользователь
Регистрация: 14.09.2007
Сообщений: 16
|
![]()
Хотите сказать, что вариантов передачи куча????
Не 1 единственный? Блин!!! Я ж из протокола знаю немного, они передаются с С++ сказано так: данные с плавающей точкой float Borland C++3.1 Это что-нибудь значит?
Blondinka это моё мироощущение при програмировании...
|
![]() |
![]() |
![]() |
#7 |
Участник клуба
Регистрация: 28.03.2007
Сообщений: 1,814
|
![]()
согласен. Потому и говорю что не мешало бы знать (в обязательном порядке) протокол обмена
|
![]() |
![]() |
![]() |
#8 |
Пользователь
Регистрация: 14.09.2007
Сообщений: 16
|
![]()
Спасибо, теперь есть над чем подумать...
Не справлюсь вернусь!!! А ещё за строки огромное спасибо вам ребята, разобралась!
Blondinka это моё мироощущение при програмировании...
|
![]() |
![]() |
![]() |
#9 |
Белик Виталий :)
Старожил
Регистрация: 23.07.2007
Сообщений: 57,097
|
![]()
Float это кажись 32 бита т.е.4 байта - получается тип Single
I'm learning to live...
|
![]() |
![]() |
![]() |
![]() |
||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
как сложить два числа с плавающей точкой | forsy | Assembler - Ассемблер (FASM, MASM, WASM, NASM, GoASM, Gas, RosAsm, HLA) и не рекомендуем TASM | 19 | 29.03.2010 02:15 |
Сравнение чисел с плавающей точкой ? | Ulex | Assembler - Ассемблер (FASM, MASM, WASM, NASM, GoASM, Gas, RosAsm, HLA) и не рекомендуем TASM | 11 | 12.04.2008 21:14 |
Преобразование числа с плавающей точкой в строку | Sibedir | Общие вопросы Delphi | 14 | 09.03.2008 21:48 |