Выяснить, как число представляется в шестнадцатеричной форме - PullRequest
0 голосов
/ 20 января 2019

В настоящее время я пытаюсь существенно изменить формат файла, который создается на станке с ЧПУ при резервном копировании программ на нем, чтобы я мог читать программы на стандартном ПК. Открыли несколько созданных файлов резервных копий и могут четко видеть шаблоны данных, такие как имя программы и т. Д., Которые можно четко увидеть в виде открытого текста. Одна вещь, с которой я борюсь, состоит в том, как числа представлены в этом.

для примера: число «20» представлено в этом файле в шестнадцатеричной форме как «40 0D 03 00».

Больше примеров:

"- 213.6287": "21 67 DF FF"

"- 500,3366": "9A A7 B3 FF"

Помогите ли вы попытаться выяснить, как эти шестнадцатеричные значения составляют эти числа?

Спасибо

1 Ответ

0 голосов
/ 20 января 2019

Эти числа хранятся в виде целых чисел со знаком с прямым порядком байтов, как число в десятки тысячных.

Например: число «20» представлено в этом файле в шестнадцатеричной форме как «400D 03 00 '.

0x00030d40 = 200000.

"- 213,6287": "21 67 DF FF"

0xffdf6721 = -2136287.

"- 500,3366": "9A A7 B3 FF"

0xffb3a79a = -5003366.

...