Как перевести из hex в dec с получением отрицательного числа?

Простейшие вопросы в области инженерной разработки
Ответить
Аватара пользователя
Chago
beginner
beginner
Сообщения: 27
Зарегистрирован: 24 янв 2015, 20:46
Репутация: 0
Версия LabVIEW: 2010
Контактная информация:

Как перевести из hex в dec с получением отрицательного числа?

Сообщение Chago »

Подскажите как перевести hex в dec с получением отрицательного числа, в калькуляторе для этого нужно переключиться на 4 байта.
hex.png
dec.png
Последний раз редактировалось Chago 30 июл 2020, 12:06, всего редактировалось 2 раза.

Artem.spb

Activity Автор
expert
expert
Сообщения: 1967
Зарегистрирован: 31 июл 2011, 23:05
Награды: 2
Репутация: 0
Версия LabVIEW: 12-18
Контактная информация:

Re: Как перевести из hex в dec с получением отрицательного числа?

Сообщение Artem.spb »

Чтобы перевести что угодно во что угодно надо знать устройство исходного формата. То, что калькулятор что-то пересчитал, вовсе не означает, что это правильно в вашем случае.
И стандартные преобразователи :labview: вполне справляются с задачей, опять же в рамках "сам сказал, сам понял".
В вашем случае не понятно, откуда идут данные.
hex.PNG

Аватара пользователя
Chago
beginner
beginner
Сообщения: 27
Зарегистрирован: 24 янв 2015, 20:46
Репутация: 0
Версия LabVIEW: 2010
Контактная информация:

Re: Как перевести из hex в dec с получением отрицательного числа?

Сообщение Chago »

Суть этой задачи в том, чтобы переводить информацию поступающую по линии МКИО. Но пока я только пытаюсь реализовать алгоритм расшифровки. В линии идут слова с значениями широты и долготы. С северными широтами вопросов нет. При расчете через калькулятор с выбором 4 байтового перевода, получаются нужные значения.

К примеру. если северная широта 0900a180 при переводе через калькулятор получаем 151036288, после не хитрых формул получаем 25 градусов, а для южной широты f3446580 при переводе получаем в десятичном 4081345920 и применяя формулы получаем 684 градуса, а должно быть 35 и как раз если в калькуляторе выбрать перевод в 4 байтах, получаем -213621376 в десятичном виде, как раз то значение которое нужно. Как это реализовать в :labview: я не могу понять.

Artem.spb

Activity Автор
expert
expert
Сообщения: 1967
Зарегистрирован: 31 июл 2011, 23:05
Награды: 2
Репутация: 0
Версия LabVIEW: 12-18
Контактная информация:

Re: Как перевести из hex в dec с получением отрицательного числа?

Сообщение Artem.spb »

Chago писал(а):
30 июл 2020, 12:05
получаем 151036288, после не хитрых формул получаем 25 градусов
прям как Ландау-Лившиц: "путём очевидных преобразований получаем..."

f3446580 ......получаем -213621376 в десятичном виде, как раз то значение которое нужно. Как это реализовать в :labview: я не могу понять.
ровно так, как я написал постом выше
hex.PNG
hex.PNG (2.14 КБ) 279 просмотров
hex2.PNG
hex2.PNG (10.85 КБ) 279 просмотров

Аватара пользователя
Chago
beginner
beginner
Сообщения: 27
Зарегистрирован: 24 янв 2015, 20:46
Репутация: 0
Версия LabVIEW: 2010
Контактная информация:

Re: Как перевести из hex в dec с получением отрицательного числа?

Сообщение Chago »

"а ларчик просто открывался"
Спасибо.

Ответить

Вернуться в «Для чайников»