Формат hex: Что такое HEX-файлы?

Содержание

Чем открыть hex? — Все о расширениях и форматах

Информация о расширении hex

Формат 1

Название (англ.): BinHex Encoded File

Название (рус.): Кодированный файл BinHex

Разработчик: BinHex

Категория: Зашифрованные файлы

Описание: HEX или BinHex Encoded File представляет собой формат файла кодированного с помощью старых версий приложения BinHex используемого в операционной системе Mac OS. Относится формат HEX к категории зашифрованных файлов. Это тип кодирования применялся для преобразования неких данных в двоичный текстовый файл, который можно было передавать по сети без риска повреждений, обычно по электронной почте. Такие документы обычно имеют больший вес, нежели исходный файл. В настоящее время формат BinHex Encoded File считается устаревшим. В новых версиях программы BinHex он был заменен форматом HQX.

Для открытия (редактирования) файла этого формата можно использовать следующие программы:

Формат 2

Название (англ.): Hexadecimal Source File

Название (рус.): Шестнадцатеричный исходный код

Разработчик: Неизвестен

Категория: Скрипты, исходный код

Описание: HEX или Hexadecimal Source File представляет собой формат файла содержащего шестнадцатеричный исходный код. Файлы этого типа относятся к категории скриптов. Внутреннее содержимое НЕХ-файла может быть представлено различными данными, например сведениями о конфигурации, параметрами настроек и т.п., сохранными в шестнадцатеричном формате. Иногда файлы этого типа могут быть представлены в виде простых текстовых документов. В этом случае открыть их можно любым текстовым редактором. В остальных случаях для просмотра НЕХ-файлов следует использовать такие программы как Heaventools FlexHex, Cygnos Hex Editor или HHD Hex Editor.

Для открытия (редактирования) файла этого формата можно использовать следующие программы:

Рейтинг расширения: 5/5
Всего проголосовало: 1 чел.

 

Есть вопросы? Мы будем рады ответить на них в комментариях ниже :).

Please enable JavaScript to view the comments powered by Disqus. comments powered by

Что это за формат? Двоичный? Hex?



Я наткнулся на следующий формат данных.

\u6444\u50CF\u5934\u524D

Он не шестнадцатеричный, не двоичный, и я не знаю, как его назвать. Что это?

binary format hex
Поделиться Источник Unknown     24 июня 2014 в 20:00

3 ответа


  • Hex В Двоичный Преобразователь

    Как я могу преобразовать в bash строку в hex (например, d43c23F1) в двоичный код. Без использования утилиты bc. Hex:Binary d43c23F1:11010100001111000010001111110001

  • Что это за формат с плавающей запятой?

    Я пытаюсь понять, как читать исторический двоичный файл данных. Я считаю, что он пришел из более старой 32-битной системы Solaris. Я смотрю на раздел файла, который, как мне кажется, содержит 32-битные плавающие числа (а не IEEE плавающих чисел). Формат выглядит следующим образом (как дамп hex):…



2

Это кодовые точки Юникода, которые кодируются как 4 hex символов, в общей сложности 16 бит.

Поделиться merlin2011     24 июня 2014 в 20:02



0

глядя на \u50CF .. часть 50CF говорит, что это HEX , а \u говорит, что это тоже unicode .

Поделиться Rahul     24 июня 2014 в 20:03



0

да, Юникод, или, возможно, utf-8, если он согласуется с ним, как установлено первыми двумя постами.&*()

UTF-8 (ЧТО-ТО ЕЩЕ)

Поделиться Frederick     22 июля 2015 в 16:43



Похожие вопросы:


Что это за кодировка? 0x21

Я читаю о ASCII, и в книге говорится, что ! был представлен как 0x21 . Теперь я знаю, что ! -это двоичный 00100001 в таблице ASCII, который также является 33 в десятичной системе счисления, которая…


Что это за формат datetime?

У меня есть структура DateTime для старого формата данных, для которого у меня нет доступа ни к каким спецификациям. Есть поле, которое указывает на datetime данных, но оно не в каком-либо формате,…


Расшифровать двоичный формат файла

У меня есть двоичный файл, в который я пытаюсь написать, однако у меня нет спецификации формата файла и я не нашел его с помощью google, я смотрел на файл с помощью редактора hex, но до сих пор у…


Hex В Двоичный Преобразователь

Как я могу преобразовать в bash строку в hex (например, d43c23F1) в двоичный код. Без использования утилиты bc. Hex:Binary d43c23F1:11010100001111000010001111110001


Что это за формат с плавающей запятой?

Я пытаюсь понять, как читать исторический двоичный файл данных. Я считаю, что он пришел из более старой 32-битной системы Solaris. Я смотрю на раздел файла, который, как мне кажется, содержит…


Что означает java исходный / двоичный формат?

Что означает исходный / двоичный формат в java? что это? Это свойство отображается в категории свойств/источников проекта netbeans.


Преобразование массива символов в двоичный формат hex C++

У меня есть строка, хранящая 16 hex символ. Например: const char* arr = DD2B23B62AC245DA; Мне нужно записать эти символы в двоичный файл в формате 8 байт. Каждый байт представлен двумя символами hex…


Карта Desfire EV1 имеет следующие данные 1A3D803DC0, но выводит 3D803DC0. Что это за формат?

Карта Desfire EV1 выводит следующие данные через weigand. 3D803DC0. Однако, когда я взглянул на карту Desfire, я увидел, что данные в файле были 1A3D803DC0. Это байт длины, за которым следуют…


Преобразование строки intel hex в нормальную hex в java

У меня есть строка в формате intel hex, и ее нужно преобразовать в формат hex, а затем оттуда в десятичную. Данные передаются с устройства gps. Вот какой результат я должен получить Intel hex :…


Как конвертировать файл dsPIC33 HEX в двоичный файл?

У меня есть файл HEX для моей заявки на dsPIC33, теперь я хочу отправить файл на microcontroller поочередно. Поскольку файл HEX, сгенерированный компилятором , имеет формат intel hex, я попытался…

hex — Russian translation – Linguee

The setting is carried out on t
h
e hex. adjusting screw of the slack […]

adjuster.

et.amazone.de

Регулировка

[…] производится при помощи шестигранника регулировочного рычага.

et.amazone.de

While tightening

[…] the screw, apply hex nut [561] to eliminate […]

the longitudinal play from the thread.

download.sew-eurodrive.com

Чтобы устранить

[…] продольный люфт в резьбе, подтягивайте […]

гайку [561] на этом винте.

download.sew-eurodrive.com

DIFFERENCE of 1 : The winner has pushed

[…] back the loser by one hex, as far as possible directly […]

away from the attacker.

jimwallman.org.uk

РАЗНИЦА 1: Победитель оттесняет

[…] проигравшего назад на один гекс, по направлению от себя.

jimwallman.org.uk

After cleaning the basket, reverse the above procedure making sure that the gasket

[…] is in place and tighten the four hex bolts.

baltimoreaircoil.eu

После чистки корзины проведите сборку в обратном порядке, убедившись, что

[…] уплотнение на месте, и затяните четыре болта.

baltimoreaircoil.eu

The close coupled pump and motor assembly is bolted

[…] together with four stainless steel hex bolts for ease of maintenance […]

and repair.

baltimoreaircoil.eu

Сборка из насоса и

[…]

мотора для облегчения обслуживания и ремонта

[…] зафиксирована четырьмя болтами из нержавеющей стали с шестигранными головками.

baltimoreaircoil.eu

The abutment consists of a prefabricated, high-fusing alloy base, which has a

[…]

cylindrical connection

[…] geometry – the SIC precision inner hex and a cast-on, high-fusing […]

alloy functional section that

[…]

allows customized contouring when used with a burnout plastic extension sleeve in the region of the screw channel.

sic-invent.com

Абатмент состоит из предварительно обработанной базы из высокопроникающего сплава, которая

[…]

имеет циллиндрическую геометрию

[…] присоединения-внутренний шестигранник используемый в системах SIC-и […]

наплавляемую функиональную

[…]

секцию из высоко проникающего сплава, что позволяет производить индивидуальное контурирование при исользовании выжигаемой расширяющей втулки в области винтового канала.

sic-invent.com

First byte (counting from left to right) equals 04 in Hexformat and equals 4 in decimal format.

mpkit.ru

Первый байт (считается слева направо) равен 04 в шестнадцатеричном виде и равен 4 в десятичном виде.

mpkit.ru

Screw hex head screw [560] against […]

the actuator of microswitch [555] until it switches over (brown-blue contacts closed).

download.sew-eurodrive.com

Выворачивайте винт [560] в сторону нажимного […]

кулачка [555] микровыключателя до его включения (синий и коричневый контакты замкнуты).

download.sew-eurodrive.com

The half that the hex digit does not belong to is then removed, and the question is asked again of the remaining ordered list of unchosen hexes.

scienceandglobalsecurity.org

Половина гекс-цифр, не принадлежащая к заданной группе, удаляется и затем проверка повторяется.

scienceandglobalsecurity.org

Any HEXeditor will allow to easily […]

replace the visible text, and the modified script will loose your copyright.

articles.mql4.com

Любой HEX-редактор позволит без труда […]

заменить видимые тексты на какие-то свои, и модифицированный скрипт будет выдавать

[…]

уже совсем не ваш копирайт.

articles.mql4.com

Prior to removing or assembling

[…] the plug, unscrew the hex socket headless screw […]

at the side.

samson.de

При разборке или сборке

[…] конуса, открутить винт с потайной шестигранной головкой […]

с боку.

samson.de

This instrument is a stainless steel

[…] holder, which has the precision inner hex and a thread in its tip.

sic-invent.com

Этот инструмент является держателем из нержавеющей стали,

[…] который снабжен внутренним шестигранником и и резьбой на кончике.

sic-invent.com

The two hex head sockets (7/16 inch […]

and 3/8 inch) have reduced outside diameters that fit all new network interface devices.

flukenetworks.com

Два гнезда с шестигранным головками […]

(7/16 дюйма и 3/8 дюйма), уменьшают внешние диаметры, которые соответствуют всем новым

[…]

устройствам интерфейса сети.

ru.flukenetworks.com

no screws, no hex bolts, straightforward mounting and riding. on top of this clever mount the saddlepack […]

has a tapered shape

[…]

allowing for a non-interfering shape with maximum storage capacity. other details include rubber zipper pulls to prevent rattling, an outer that can easily be cleaned and an integrated strap to hang your tail light from.

bbbcycling.com

Крепление под задний фонарь интегрировано в логотип ВВВ.

bbbcycling.com

Also seen in this packet sequence is that port 80 on the victim network seemingly has a service, as evidenced by the SYN/ACK, The SYN/ACK packet

[…]

is ascertained by verifying the flag field in the TCP header, in this

[…] case the underline hex value of 12 or […]

decimal 18.

redline-software.com

Так же в этом пакете видно, что у порта 80 сети жертвы есть сервис, как на то указывает SYN/ACK.

[…]

SYN/ACK пакет определен проверкой поля флагов

[…] в TCP заголовке, в нашем примере подчеркнуто […]

в шестнадцатеричном коде 12 или в десятичном 18.

redline-software.com

When we shall be calculating many important things like Number of Cylinders, Heads and Sectors of a hard disk or we shall be using hard

[…]

disk editor programs to analyze different characteristics and

[…] problems, we shall need the good knowledge of Hex system.

datadoctor.biz

Когда мы будем высчитывать много важных вещей как количество цилиндров, головки и участки трудного диска или мы будем использовать программы редактора

[…]

трудного диска для того чтобы проанализировать по-разному

[…] характеристики и проблемы, мы хорошее знание системы наговора.

datadoctor.biz

Hex Viewer window shows the opened […]

file content in binary, hexadecimal and ASCII modes.

elecard.com

Окно Hex Viewer отображает открытый […]

файл в двоичном, шестнадцатеричном и ASCII режимах.

elecard.com

Combatants with weapons with

[…] a reach of more than one hex (see later for combat engagement […]

zones) may always try and engage

[…]

an attacker who wishes to close to a shorter range.

jimwallman.org.uk

Воины

[…] с оружием с диапазоном больше одного гекса (см. далее […]

«зоны ведения боя»), может всегда попытаться начать поединок

[…]

с персонажем, подошедшим ближе диапазона оружия.

jimwallman.org.uk

It thus makes more sense to use hexadecimal (hex or base 16) digits, rather than base 10 decimal digits for the plaintext, ciphertext, and OPODS mappings.41 With the use of the hex digits, each OPODS mapping consists of 16 hexes, in random order, with no hex digit repeated in a given mapping.

scienceandglobalsecurity.org

Поэтому имеет больше смысла использовать гексадесятичные («гексы», или на базе 16) цифры, а не десятичные (база 10) цифры для чистого текста, шифрованного текста и отображений ОБДПЗ.41 При использовании гекс-цифр каждое отображение ОБДПЗ состоит из 16 гексов, расположенных в случайном порядке, причем ни одна из гекс-цифр не повторяется в данном отображении.

scienceandglobalsecurity.org

Since 1978, in the Self drilling screw, DIN7504, self

[…] tapping screw, type17, hex washer head, tek screw, […]

chipboard screw, drywall screw, roofing

[…]

screw, concrete screw, flange washer head screw, stainless steel screw, farmer screw, screw manufacturer, double thread screw, etc., Landwide has been offering our customers high quality #5 / #6 DRILL POINT production service.

landwide-screw.com

С 1978 года в Себе Винт бурения,

[…] DIN7504, самонарезающие винты, Type17, шестигранная […]

головка машина, ТЭК винт, винт ДСП,

[…]

гипсокартон винт, винт кровельные, бетонные винты, шайбы фланца головкой, нержавеющая сталь винт, фермер винт, винт производителя , двойной винтовой резьбы и т.д., Landwide был предлагая нашим клиентам высокое качество № 5 / № 6 сверла производства услуг.

landwide-screw.com

Status line (Found files quantity, Total size, Process status, Current LBA)

[…] Board with inlay «Pro tocol«, «HEX» and indicator of performance […]

process.

pc-3000flash.com

Строка состояния (Количество найденных

[…]

файлов, Общий размер, Статус процесса, Текущий

[…] LBA)Панель с вкладками «Протокол», «HEX» и индикатором процесса […]

выполнения.

pc-3000flash.com

Existing designs can use this new version by simply changing a

[…] couple of component values and the HEX file.

rls.si

В существующих устройствах эта новая версия может использоваться путем простого изменения

[…] нескольких значений компонентов и файла HEX.

rls.si

The hex head self-threading screw […]

(furnished with most UL Listed CPVC hangers) is easily installed using a rechargeable electric drill and a 5/8 inch (8,0 mm) socket attachment.

tyco-fire.com

Шуруп-саморез с шестигранной головкой […]

(поставляемый с большинством включенных в реестр UL подвесов для труб из ХПВХ) легко устанавливается при помощи аккумуляторной дрели с гайковертом на 5/8 дюйма (8,0 mm) .

tyco-fire.com

Push the button «Update

[…] software» and select the previously extracted hex file.

ohmartvega.com

Нажать кнопку «Обновить ПО» и

[…] для запуска обновления выбрать hex-файл из загруженного […]

ранее и распакованного архива.

ohmartvega.com

This algrithm wastes none of the OTP, but is somewhat less secure in that it still relies on the computer’s PRNG.60 Random OPODS mappings

[…]

can also be created by letting the

[…] OTP values shuffle the hex digits {0123456789ABCDEF} […]

in a random fashion using, for example,

[…]

the Fisher-Yates Shuffling Algorithm.61 Another approach is called the “Reseeding Algorithm.

scienceandglobalsecurity.org

Этот алгоритм не тратит ничего в ОБ, но он слегка менее безопасен в той степени, в какой все еще полагается на ГПСЧ компьютера.60 Случайные отображения

[…]

ОБДПЗ могут также быть созданы,

[…] если позволить в значении ОБ перемешать случайным […]

образом гекс-цифры (0123456789ABCDEF), использовав,

[…]

например, алгоритм смешивания Фишера-Ятса.61 Другой подход назван «алгоритмом повторения отбора».

scienceandglobalsecurity.org

The scale of Radey’s game was astounding: 1 counter = a

[…] battalion; 1 mile per hex; three turns per […]

day; as a result the 2,400 counters, 4 large

[…]

maps, and a hard-to-predict playing time made “Korsun Pocket” a true “monster.

statusbelli.ru

Поражал масштаб игры Рэйди: одна фишка –

[…] батальон, 1 миля в гексагоне, в сутках […]

– три хода, в результате 2 400 фишек, 4 большие

[…]

карты и трудно предсказуемые затраты времени на игру делали «Корсунь-Шевченковский котел» поистине «монстром».

statusbelli.ru

Note that we can use the last eight hex digits of the fingerprint in this […]

and other GnuPG operations.

debian.org

Заметьте, что мы можем

[…] использовать последние восемь шестнадцатеричных числа отпечатка при выполнении […]

этой и остальных операций GnuPG.

debian.org

Lastly, we will also take a look to see how the UPX

[…] packed malware looks like at the hex level.

redline-software.com

Наконец, мы узнаем, как выглядите вредоносное программное

[…] обеспечение, упакованное в UPX, на шестнадцатиричном […]

уровне.

redline-software.com

If instead of using hex digits as the fundamental unit, […]

bytes were used for OPODS, each mapping would 256 bytes long, which

[…]

would require substantially more storage.

scienceandglobalsecurity.org

Если вместо применения гекс-чисел в качестве фундаментальных […]

единиц будут использоваться для ОБДЗЗ байты, каждое отображение

[…]

окажется на 256 байтов длиннее, а это потребует значительно больше памяти.

scienceandglobalsecurity.org

Как в CSS сделать прозрачность в HEX формате?

Чтобы добавить прозрачность в HEX-формат, нужно добавить несколько дополнительных символов, которые будут означать альфа-канал (прозрачность).

Прозрачность для цвета задается в процентах (от 0 до 100). Чтобы добавить прозрачность в HEX-формат — нужно необходимое значение прозрачности также конвертировать в шестнадцатеричное значение.

Для удобства, можно подсмотреть в табличку приведенную ниже:

# таблица шестнадцатеричных значения от нуля до ста.
100% — FF
99% — FC
98% — FA
97% — F7
96% — F5
95% — F2
94% — F0
93% — ED
92% — EB
91% — E8
90% — E6
89% — E3
88% — E0
87% — DE
86% — DB
85% — D9
84% — D6
83% — D4
82% — D1
81% — CF
80% — CC
79% — C9
78% — C7
77% — C4
76% — C2
75% — BF
74% — BD
73% — BA
72% — B8
71% — B5
70% — B3
69% — B0
68% — AD
67% — AB
66% — A8
65% — A6
64% — A3
63% — A1
62% — 9E
61% — 9C
60% — 99
59% — 96
58% — 94
57% — 91
56% — 8F
55% — 8C
54% — 8A
53% — 87
52% — 85
51% — 82
50% — 80
49% — 7D
48% — 7A
47% — 78
46% — 75
45% — 73
44% — 70
43% — 6E
42% — 6B
41% — 69
40% — 66
39% — 63
38% — 61
37% — 5E
36% — 5C
35% — 59
34% — 57
33% — 54
32% — 52
31% — 4F
30% — 4D
29% — 4A
28% — 47
27% — 45
26% — 42
25% — 40
24% — 3D
23% — 3B
22% — 38
21% — 36
20% — 33
19% — 30
18% — 2E
17% — 2B
16% — 29
15% — 26
14% — 24
13% — 21
12% — 1F
11% — 1C
10% — 1A
9% — 17
8% — 14
7% — 12
6% — 0F
5% — 0D
4% — 0A
3% — 08
2% — 05
1% — 03
0% — 00
Конструкция цвета в CSS обычно выглядит так:
#FFFFFF
или
#FFF
Обе записи означают один и тот же цвет — белый.

Основные браузеры (такие как Chrome) начали поддерживать альфа-канал (прозрачность) в hex цветах примерно с 2016 года (с разным уровнем стабильности). Чтобы добавить альфа канал в HEX значение — нужно добавить необходимую прозрачность в шестнадцатеричном формате в самый конец записи из шести символов.

Возьмем красный цвет и сделаем его полупрозрачным:

#FF000080 # 80 - шестнадцатеричная запись 50 (см таблицу выше)
Таким образом, мы берем HEX-цвет и добавляем ему прозрачность, добавляя альфа канал в конец записи.

Конструкцию можно описать как RRGGBBAA.

А что же с HEX-цветом с записью цвета тремя символами? Примерно тоже самое, но в конец добавляется лишь один символ:

#F008
Конструкцию можно описать как RGBA.

Корректность работы цвета можно непосредственно в браузере (задав css-атрибуту нужный цвет). На скриншоте ниже видно, что Chrome обозначает hex-цвет с прозрачностью (альфа-каналом) отдельной иконкой.

Прозрачность для HEX-цвета в CSS

Используя альфа-канал в HEX — убедитесь, что все браузеры, в которых ваш сайт/приложение должно работать поддерживают его.

Преобразование массива байт в hex-строку

В процессе разработки часто бывает необходимо отобразить «сырой» массив данных, состоящий из массива байт, в виде читаемой строки. При этом далеко не все возможные значения байта (которых всего 256) отображаются в виде читаемых символов. Общепринятным подходом является отображение значения байта в шестандцатеричном формате (hexadecimal или hex).

В данном формате значения от 0 до 9 отображаются как есть, затем 10 заменяется на первую букву английского алфавита A, 11 преобразуется в B и т.д. И так до значения 15, т.е. до F. Затем значение 16 в шестнадцатеричном формате отображается в виде 10 (переполнился первый разряд, который стал нулём и мы заняли второй разряд). И далее 17 становится 11, 18 преобразуется в 12 и т.д. Максимальное значение байта 255 отображается как FF.

В Java (а, значит, и в Kotlin) наиболее простой способ отображения числа в шестнадцатеричном виде — это использование специального шаблона в методе String.format(). Рассмотрим код на kotlin:

fun ByteArray.toHexString() = this.joinToString(separator = «») { «%02X».format(it) }

Здесь мы объявляем функцию расширения для ByteArray. В ней мы форматируем каждый байт по шаблону %02X. % в данном случае означает начало шаблона, 2 говорит о длине формируемой строки, 0 — о том, что если число занимает меньше символов, чем требуется, то недостающие разряды будут заполнены нулями. Ну а X отвечает за шестнадцатеричный формат. При использовании прописной X строка будет также содержать прописные буквы, а при использовании строчной x — строчные. Далее мы склеиваем каждую такую строку с помощью метода joinToString() и в качестве разделителя указываем пустую строку.

Теперь мы можем вызывать нашу функцию расширения на любом байтовом массиве:

val bytes = byteArrayOf(1, 2, 10, 15)
val hexString = bytes.toHexString() // строка «01020A0F»

Для создания массива байт используем byteArrayOf(), но в реальных приложениях чаще всего это содержимое строки или файла. Далее метод toHexString() возвращает строку в hex-формате. Каждое число представлено двумя символами. Обратите внимание на ведущие нули для каждого из значений.

bin, oct, hex – системы исчисления

Вспомним основы информатики и поговорим о системах исчисления. В жизни мы привыкли к десятичной системе (base-10 или decimal), железо компьютеров оперирует в системе двоичной (base-2 или binary) – нулями и единицами. Часто приходится иметь дело с системой шестнадцатиричной (base-16 или hexadecimal), она позволяет записывать данные в 8 раз короче, чем двоичная. Реже встречается система восьмеричная (base-8 или octal). Система исчисления – это всего лишь средство представления числа, т.е. то, как мы его в строчку запишем или считаем, само число остается самим собой, независимо от системы.

Чтобы получить целое число из строки, записанной в какой-то системе исчисления, используем функцию int (второй параметр – база системы):

>>> int('42')  # по умолчанию 10 
42
>>> int('42', 10)  # тоже самое
42
>>> int('101010', 2)
42
>>> int('BEEF', 16)
48879
>>> int('7654', 8)
4012

Наоборот сделать из числа строку в какой-то системе – встроенные функции bin, oct и hex:

>>> bin(42)
'0b101010'
>>> hex(48879)
'0xbeef'
>>> oct(4012)
'0o7654'

В строке появились префиксы 0b, 0x и 0o. Как и в Си, в Python можно использовать эти префиксы для записи чисел в коде помимо обычного десятичного варианта, если это требуется:

>>> 0b11011, 0xDEAD, 0o777
(27, 57005, 511)

Однако, часто приходится иметь дело с чистыми HEX-данными без префиксов. Многие (да и я) делали вот так:

>>> hex(12345)[2:]
'3039'

Т.е. просто отрезали первые два символа. Это не очень интуитивно, да и может привести к неправильному поведению, если передать отрицательное число:

>>> hex(-12345)
'-0x3039'
>>> hex(-12345)[2:]
'x3039'

К счастью, есть встроенная функция format(value, format_spec) (не путать с str.format), которая форматирует значение, согласно спецификатору форматирования:

>>> format(3039, 'x'), format(3039, 'X'), format(3039, '#x')
('bdf', 'BDF', '0xbdf')
>>> format(120, 'b')
'1111000'
>>> format(79, 'o')
'117'
  • x — 16-ричное без префикса, маленькие букв
  • X — 16-ричное без префикса, заглавные буквы
  • #x — 16-ричное с префиксом, маленькие буквы
  • b — двоичное число без префикса и т.д.

format(value, format_spec) эквивалентная вызову type(value).__format__(value, format_spec).

🐉 Специально для канала @pyway. Подписывайтесь на мой канал в Телеграм @pyway 👈 

1 865

Как конвертировать HEX в PDF с помощью принтера PDF

На этой странице объясняется, как Вы можете с легкостью конвертировать a .hex файл в PDF файл с помощью бесплатного и простого в использовании PDF24 Creator. Описанный способ конвертации является бесплатным и простым. PDF24 Creator устанавливает PDF принтер, и Вы можете распечатать Ваш .hex файл на данном принтере, чтобы конвертировать файл в PDF.

Что необходимо для конвертации HEX файла в PDF файл или как можно создать PDF версию Вашего HEX файла

Файлы типа HEX или файлы с расширением .hex можно легко конвертировать в PDF с помощью PDF принтера.

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

Таким образом, Вы можете создать PDF версию любого файла, который можно распечатать. Просто откройте файл с помощью ридера, нажмите кнопку печати, выберите виртуальный PDF принтер и нажмите кнопку «Печать». Если у Вас есть устройство для чтения файла HEX и если ридер может распечатать файл, то Вы можете преобразовать файл в формат PDF.

Бесплатный и простой в использовании PDF принтер от PDF24 можно загрузить с этой страницы. Просто нажмите на кнопку загрузки справа от этой статьи, чтобы загрузить PDF24 Creator. Установите это программное обеспечение. После установки Вы будете иметь новое печатающее устройство, зарегистрированное в Windows, которое можно использовать для создания PDF файлов из Вашего .hex файла или конвертации любого другого файла с возможностью печати в формат PDF.

Вот как это работает:
  1. Установите PDF24 Creator
  2. Откройте .hex файл с помощью ридера, который может открыть файл.
  3. Распечатайте файл на виртуальном PDF24 PDF принтере.
  4. Помощник PDF24 открывает окно, в котором Вы можете сохранять новый файл как PDF, отправлять по его email, факсу или редактировать.

Подробнее о PDF24 Creator

Более подробная информация о .hex файлах, которая поможет найти подходящий ридер, так что Вы можете печатать файлы этого типа на PDF принтере.

Расширение файла:.hex
Мим-Тип:
Описание:Hex dump

ОБЩЕЕ: формат файла Intel HEX

Главная / Техническая поддержка

Информация в этой статье относится к:

  • Keil MDK Все версии
  • C166 Все версии
  • C251 Все версии
  • C51 Все версии

ВОПРОС

Что такое формат файлов Intel HEX?

ОТВЕТ

Файл Intel HEX — это текстовый файл ASCII со строками текста, которые следуйте файловому формату Intel HEX.Каждая строка в файле Intel HEX содержит одну HEX-запись. Эти записи состоят из шестнадцатеричного числа, представляющие машинный код и / или постоянные данные. Файлы Intel HEX часто используются для передачи программы и данных, которые будет храниться в ПЗУ или СППЗУ. Большинство программистов EPROM или эмуляторы могут использовать файлы Intel HEX.

Формат записи

Файл Intel HEX состоит из любого количества записей HEX. Каждый запись состоит из пяти полей, которые расположены следующим образом формат:

 : llaaaatt [дд...] cc 
 

Каждая группа букв соответствует отдельному полю, и каждая Буква представляет собой единственную шестнадцатеричную цифру. Каждое поле составлено не менее двух шестнадцатеричных цифр, составляющих байт, как описано ниже:

  • : — это двоеточие, с которого начинается каждый Intel HEX записывать.
  • ll это поле длины записи, которое представляет количество байтов данных ( dd ) в записи.
  • аааа это адрес поле, представляющее начальный адрес для последующих данных в запись.
  • тт это поле, представляющее тип записи HEX, который может быть одним из следующего:
    00 — запись данных
    01 — запись конца файла
    02 — запись адреса расширенного сегмента
    04 — запись расширенного линейного адреса
    05 — запись начального линейного адреса ( МДК-АРМ Только)
  • дд это поле данных, представляющее один байт данных.Запись может иметь несколько байтов данных. Количество байтов данных в записи должно соответствует номеру, указанному в поле ll .
  • cc поле контрольной суммы, представляющее контрольную сумму записи. Контрольная сумма вычисляется путем суммирования значений всех шестнадцатеричных пары цифр в записи по модулю 256 и взяв двойку дополнение.
Записи данных

Файл Intel HEX состоит из любого количества записей данных, которые завершаются возвратом каретки и переводом строки.Записи данных выглядят следующим образом:

 : 10246200464C5549442050524F46494C4500464C33 
 

Эта запись расшифровывается следующим образом:

 : 10246200464C5549442050524F46494C4500464C33
||||||||||| CC-> Контрольная сумма
||||||||| DD-> Данные
||||||| TT-> Тип записи
||| AAAA-> Адрес
| LL-> Длина записи
: -> Двоеточие 
 

где:

  • 10 — количество байтов данных в записывать.
  • 2462 — это адрес, по которому должны быть данные находится в памяти.
  • 00 — это тип записи 00 (запись данных).
  • 464C … 464C — это данные.
  • 33 — контрольная сумма записи.
Расширенная линейная Адресные записи (HEX386)

Записи расширенного линейного адреса также известны как 32-битный адрес. записи и записи HEX386.Эти записи содержат старшие 16 бит (биты 16-31) адреса данных. Расширенная линейная адресная запись всегда имеет два байта данных и выглядит следующим образом:

 : 02000004FFFFFC 
 

где:

  • 02 — количество байтов данных в записывать.
  • 0000 — это адресное поле. Для расширенного запись линейного адреса, это поле всегда 0000.
  • 04 — тип записи 04 (расширенный линейный адресная запись).
  • FFFF — это старшие 16 бит адреса.
  • FC — это контрольная сумма записи, рассчитывается как
    01h + NOT (02h + 00h + 00h + 04h + FFh + FFh).

При чтении расширенной линейной адресной записи расширенный линейный адрес, хранящийся в поле данных, сохраняется и применяется к последующие записи читаются из файла Intel HEX.Линейный адрес остается в силе до тех пор, пока не будет изменен другим расширенным адресом записывать.

Адрес абсолютной памяти записи данных получается добавлением адресное поле в записи на смещенные адресные данные из расширенная линейная адресная запись. Следующий пример иллюстрирует этот процесс ..

  Адрес из адресного поля записи данных 2462
Поле данных расширенной линейной записи адреса FFFF
                                              --------
Адрес абсолютной памяти FFFF2462 
 
Расширенный сегмент Адресные записи (HEX86)

Записи расширенного сегмента, также известные как HEX86 записи — содержат биты 4-19 сегмента адреса данных.Расширенный запись адреса сегмента всегда имеет два байта данных и отображается как следует:

 : 020000021200EA 
 

где:

  • 02 — количество байтов данных в записывать.
  • 0000 — это адресное поле. Для расширенного запись адреса сегмента, это поле всегда 0000.
  • 02 — это тип записи 02 (расширенный сегмент адресная запись).
  • 1200 — сегмент адреса.
  • EA — это контрольная сумма записи, рассчитывается как
    01ч + НЕ (02ч + 00ч + 00ч + 02ч + 12ч + 00ч).

При чтении записи адреса расширенного сегмента расширенный адрес сегмента, хранящийся в поле данных, сохраняется и применяется к последующие записи читаются из файла Intel HEX. Адрес сегмента остается в силе до тех пор, пока не будет изменен другим расширенным адресом записывать.

Адрес абсолютной памяти записи данных получается добавлением адресное поле в записи к данным смещенного адреса из запись адреса расширенного сегмента. Следующий пример иллюстрирует этот процесс.

  Адрес из адресного поля записи данных 2462
Поле данных 1200 записи адреса расширенного сегмента
                                             --------
Абсолютный адрес памяти 00014462 
 
Начало линейного Адресные записи (только MDK-ARM)

Записи начального линейного адреса определяют начальный адрес заявление.Эти записи содержат полный линейный 32-битный адрес. Запись начального линейного адреса всегда имеет четыре байта данных и выглядит следующим образом:

 : 04000005000000CD2A 
 

где:

  • 04 — количество байтов данных в записывать.
  • 0000 — это адресное поле. Для начала запись линейного адреса, это поле всегда 0000.
  • 05 — тип записи 05 (начальная линейная адресная запись).
  • 000000CD — 4-байтовый линейный начальный адрес приложение.
  • 2A — контрольная сумма записи, рассчитывается как
    01ч + НЕ (04ч + 00ч + 00ч + 05ч + 00ч + 00ч + 00ч + CDh).

Начальный линейный адрес указывает адрес __main (pre-main), но не адрес кода запуска, который обычно вызывает __main после вызова SystemInit ().Странное линейное начало адрес указывает, что __main скомпилирован для инструкции Thumb набор.

Запись начального линейного адреса может располагаться в любом месте шестнадцатеричного файла. В большинстве случаев эту запись можно игнорировать, потому что она не содержит информация, необходимая для программирования флэш-памяти.

Записи о конце файла (EOF)

Файл Intel HEX должен заканчиваться записью конца файла (EOF). Этот запись должна иметь значение 01 в поле типа записи.Запись EOF всегда выглядит следующим образом:

 : 00000001FF 
 

где:

  • 00 — количество байтов данных в записывать.
  • 0000 — это адрес, по которому данные должны быть находится в памяти. Адрес в записях конца файла: бессмысленно и игнорируется. Типичный адрес 0000h.
  • 01 — тип записи 01 (конец файла записывать).
  • FF — контрольная сумма записи, рассчитывается как
    01ч + НЕ (00ч + 00ч + 00ч + 01ч).
Пример файла Intel HEX

Ниже приведен пример полного файла Intel HEX:

.
 : 10001300AC12AD13AE10AF1112002F8E0E8F0F2244
: 10000300E50B250DF509E50A350CF5081200132259
: 03000000020023D8
: 0C002300787FE4F6D8FD7581130200031D
: 10002F00EFF88DF0A4FFEDC5F0CEA42EFEEC88F016
: 04003F00A42EFE22CB
: 00000001FF 
 

СМОТРИ ТАКЖЕ

СМОТРИ ТАКЖЕ 8051


Последняя редакция: 25 февраля 2021 г., четверг


Format-Hex (Microsoft.PowerShell.Utility) — PowerShell | Документы Microsoft

Отображает файл или другой ввод как шестнадцатеричный.

В этой статье

Синтаксис

  Формат-шестнадцатеричный
      [-Path] 
      [-Count ]
      [-Offset ]
      [<Общие параметры>]  
  Формат-шестнадцатеричный
      -LiteralPath 
      [-Count ]
      [-Offset ]
      [<Общие параметры>]  
  Формат-шестнадцатеричный
      -InputObject 
      [-Encoding ]
      [-Count ]
      [-Offset ]
      [-Сырой]
      [<Общие параметры>]  

Описание

Командлет Format-Hex отображает файл или другой ввод в виде шестнадцатеричных значений.Чтобы определить смещения символа из вывода, добавьте число в крайней левой части строки к числу в верхняя часть столбца для этого персонажа.

Командлет Format-Hex может помочь вам определить тип файла поврежденного файла или файла, который может не иметь расширения имени файла. Вы можете запустить этот командлет, а затем прочитать шестнадцатеричный вывод чтобы получить информацию о файле.

При использовании Format-Hex в файле командлет игнорирует символы новой строки и возвращает все содержимое файла в одной строке с сохранением символов новой строки.

Примеры

Пример 1. Получить шестнадцатеричное представление строки

Эта команда возвращает шестнадцатеричные значения строки.

  «Привет, мир» | Формат-шестнадцатеричный

Ярлык: String (System.String) <2944BEC3>

          Смещение байтов Ascii
                 00 01 02 03 04 05 06 07 08 09 0A 0B 0C 0D 0E 0F
          ------ -------------------------------------------- --- -----
0000000000000000 48 65 6C 6C 6F 20 57 6F 72 6C 64 Hello World  

Строка Hello World отправляется по конвейеру в командлет Format-Hex .Шестнадцатеричный вывод Format-Hex показывает значения каждого символа в строке.

Пример 2: Найти тип файла из шестнадцатеричного вывода

В этом примере используется шестнадцатеричный вывод для определения типа файла. Командлет отображает файл полный путь и шестнадцатеричные значения.

Чтобы проверить следующую команду, сделайте копию существующего файла PDF на локальном компьютере и переименуйте его. скопированный файл в File.t7f .

  Формат-Шестнадцатеричный-Путь.\ File.t7f -Счет 48

Ярлык: C: \ Test \ File.t7f

          Смещение байтов Ascii
                 00 01 02 03 04 05 06 07 08 09 0A 0B 0C 0D 0E 0F
          ------ -------------------------------------------- --- -----
0000000000000000 25 50 44 46 2D 31 2E 35 0D 0A 25 B5 B5 B5 B5 0D% PDF-1.5 ..% ????.
0000000000000010 0A 31 20 30 20 6F 62 6A 0D 0A 3C 3C 2F 54 79 70 .1 0 obj .. << / Тип
0000000000000020 65 2F 43 61 74 61 6C 6F 67 2F 50 61 67 65 73 20 e / Каталог / Страницы  

Командлет Format-Hex использует параметр Path для указания имени файла в текущем каталоге, Файл.Т7Ф . Расширение файла .t7f встречается редко, но шестнадцатеричный вывод % PDF показывает, что это это файл PDF. В этом примере параметр Count используется для ограничения вывода до первых 48 байтов файла.

Пример 3: Форматирование массива разных типов данных

В этом примере используется массив различных типов данных, чтобы показать, как Format-Hex обрабатывает их в Трубопровод.

Он будет передавать каждый объект через конвейер и обрабатывать отдельно.Однако, если это числовой data, а соседний объект также числовой, он сгруппирует их в один выходной блок.

  'Привет, мир!', 1, 1138, 'foo', 'bar', 0xdeadbeef, 1gb, 0b1101011100, $ true, $ false | Формат-шестнадцатеричный

Ярлык: String (System.String) <24F1F0A3>

          Смещение байтов Ascii
                 00 01 02 03 04 05 06 07 08 09 0A 0B 0C 0D 0E 0F
          ------ -------------------------------------------- --- -----
0000000000000000 48 65 6C 6C 6F 20 77 6F 72 6C 64 21 Привет, мир!

   Этикетка: Int32 (System.Int32) <2EB933C5>

          Смещение байтов Ascii
                 00 01 02 03 04 05 06 07 08 09 0A 0B 0C 0D 0E 0F
          ------ -------------------------------------------- --- -----
0000000000000000 01 00 00 00 72 04 00 00 � r� 

   Ярлык: String (System.String) <4078B66C>

          Смещение байтов Ascii
                 00 01 02 03 04 05 06 07 08 09 0A 0B 0C 0D 0E 0F
          ------ -------------------------------------------- --- -----
0000000000000000 66 6F 6F foo

   Ярлык: String (System.Строка) <51E4A317>

          Смещение байтов Ascii
                 00 01 02 03 04 05 06 07 08 09 0A 0B 0C 0D 0E 0F
          ------ -------------------------------------------- --- -----
0000000000000000 62 61 72 бар

   Ярлык: Int32 (System.Int32) <5ADF167B>

          Смещение байтов Ascii
                 00 01 02 03 04 05 06 07 08 09 0A 0B 0C 0D 0E 0F
          ------ -------------------------------------------- --- -----
0000000000000000 EF BE AD DE 00 00 00 40 5C 03 00 00 ï¾-Þ @ \ � 

   Ярлык: Boolean (System.Логическое значение) <7D8C4C1D>

          Смещение байтов Ascii
                 00 01 02 03 04 05 06 07 08 09 0A 0B 0C 0D 0E 0F
          ------ -------------------------------------------- --- -----
0000000000000000 01 00 00 00 00 00 00 00 -  

Параметры

-Счет

Представляет количество байтов, включаемых в шестнадцатеричный вывод.

Этот параметр появился в PowerShell 6.2.

Тип: Int64
Позиция: Именованный
Значение по умолчанию: Int64.MaxValue
Принять ввод конвейера: Ложные символы Ложь

-Encoding

Задает кодировку входных строк. Это применимо только к входу [строка] . Параметр не влияет на числовые типы.Выходное значение всегда utf8NoBOM .

Допустимые значения этого параметра следующие:

  • ascii : использует кодировку для набора символов ASCII (7-бит).
  • bigendianunicode : кодирует в формате UTF-16, используя порядок байтов с прямым порядком байтов.
  • bigendianutf32 : кодирует в формате UTF-32, используя порядок байтов с прямым порядком байтов.
  • oem : Использует кодировку по умолчанию для MS-DOS и консольных программ.
  • unicode : кодирует в формате UTF-16, используя порядок байтов с прямым порядком байтов.
  • utf7 : кодирует в формате UTF-7.
  • utf8 : кодирует в формате UTF-8.
  • utf8BOM : кодирует в формате UTF-8 с меткой порядка байтов (BOM)
  • utf8NoBOM : кодирует в формате UTF-8 без метки порядка байтов (BOM)
  • utf32 : кодирует в формате UTF-32.

Начиная с PowerShell 6.2, параметр Encoding также позволяет использовать числовые идентификаторы зарегистрированного кода. страниц (например, -Encoding 1251 ) или строковых имен зарегистрированных кодовых страниц (например, -Кодирование "windows-1251" ). Для получения дополнительной информации см. Документацию .NET для Encoding.CodePage.

Примечание

UTF-7 * больше не рекомендуется использовать. В PowerShell 7.1 предупреждение пишется, если вы укажите utf7 для параметра Encoding .

903 значение:
Тип: Кодировка
Допустимые значения: ASCII, BigEndianUnicode, BigEndianUTF32, OEM, Unicode, UTF7, UTF8, UTF8BOM, UTF8NoBOM UTF8NoBOM
Принять ввод конвейера: Ложь
Принять символы подстановки: Ложь

-InputObject

Используется для ввода в трубопровод.Ввод конвейера поддерживает только определенные скалярные типы и [system.io.fileinfo] экземпляры для трубопровода из Get-ChildItem .

Поддерживаемые скалярные типы:

  • [строка] , [символ]
  • [байт] , [сбайт]
  • [int16] , [uint16] , [короткий] , [ushort]
  • [int] , [uint] , [int32] , [uint32] ,
  • [длинный] , [ulong] , [int64] , [uint64]
  • [одинарный] , [плавающий] , [двойной]
  • [логический]

До PowerShell 6.2, Format-Hex будет обрабатывать ввод конвейера с несколькими типами ввода с помощью группировать все похожие объекты вместе. Теперь он обрабатывает каждый отдельный объект, когда он проходит через Конвейер и не будет группировать объекты вместе, если похожие объекты не являются смежными.

Тип: PSObject
Позиция: Именованный
Значение по умолчанию: Нет
Принять ввод конвейера: Истинный Подстановочные символы Принять подстановочные символы

-LiteralPath

Задает полный путь к файлу.Значение LiteralPath используется точно так, как оно набрано. Этот параметр не принимает подстановочные знаки. Чтобы указать несколько путей к файлам, разделите пути через запятую. Если параметр LiteralPath включает escape-символы, заключите путь в одинарные кавычки. PowerShell не интерпретирует символы в одной строке в кавычках как escape-последовательности. Для получения дополнительной информации см. About_Quoting_Rules.

903 Ложь
Тип: Строка []
Псевдонимы: PSPath, LP
Позиция: Именованный
Значение по умолчанию: Нет
Принимать подстановочные знаки: Ложь

-Смещение

Это количество байтов, которые нужно пропустить из шестнадцатеричного вывода.

Этот параметр появился в PowerShell 6.2.

903 Ложный подстановочный знак
Тип: Int64
Позиция: Именованный
Значение по умолчанию: 0
Принять конвейерный ввод: Ложный

- путь

Задает путь к файлам. Используйте точку (. ), чтобы указать текущее местоположение.Подстановочный знак ( * ) принимается и может использоваться для указания всех элементов в местоположении. Если параметр Path включает escape-символы, заключите путь в одинарные кавычки. Чтобы указать несколько путей к файлы, разделяйте пути запятыми.

True
Тип: Строка []
Позиция: 0
Значение по умолчанию: Нет
Принять ввод конвейера: Принять подстановочные знаки Ложный

-Raw

Этот параметр больше ничего не делает.Он сохранен для совместимости скриптов.

903 Подстановочные символы Ложный 903
Тип: SwitchParameter
Позиция: Именованный
Значение по умолчанию: Нет
Принять ввод конвейера: Ложный

Входы

Строка

Этому командлету можно передать строку по конвейеру.

Выходы

Коллекция байтов

Этот командлет возвращает ByteCollection .Этот объект представляет собой набор байтов. Это включает в себя методы, которые преобразуют коллекцию байтов в строку, отформатированную как каждая возвращенная строка вывода по Format-Hex . В выходных данных также указывается тип обрабатываемых байтов. Если вы укажете Path или LiteralPath параметр, объект содержит путь к файлу, который содержит каждый байт. Если вы передадите строку, логическое значение, целое число и т. Д., Он будет соответствующим образом помечен.

Банкноты

Самый правый столбец вывода пытается отобразить байты как символы ASCII:

Обычно каждый байт интерпретируется как кодовая точка Unicode, что означает, что:

  • Печатные символы ASCII всегда отображаются правильно
  • Многобайтовые символы UTF-8 никогда не отображаются правильно
  • символов UTF-16 отображаются правильно, только если их старший байт имеет значение NUL .

Форматы: HEX

Форматы: HEX

Преобразует шестнадцатеричные положительные двоичные значения в целые числа. (с фиксированной точкой) или действительные (с плавающей точкой) значения.
Диапазон ширины: 1–16
Ширина по умолчанию: 8
Выравнивание: осталось
Особенности CMS: Формат с плавающей запятой IBM

w
определяет ширину поля вывода value и определяет, является ли вывод целым или действительным двоичным значением.

Формат HEX преобразует реальный двоичный код (с плавающей запятой) числа в шестнадцатеричном представлении. Каждая записанная шестнадцатеричная цифра в коде EBCDIC используется один байт на цифру. Например, с плавающей точкой Число 1.0 имеет шестнадцатеричное значение 'F1'x (EBCDIC 1) с использованием HEX1. формат.

Значение w в формате HEX определяет ширина значения и записывается ли число в виде числа с плавающей запятой число или целое число. Когда вы указываете значение ширины от 1 до 15, реальные двоичные числа перед записью обрезаются до целых чисел с фиксированной запятой в шестнадцатеричные значения.Однако, когда вы указываете 16 для ширины, с плавающей запятой записывается значение, а числа не усекаются. Например, если значение Y равно 31,5, и вы используете следующий оператор PUT, чтобы записать его в SAS log записывается следующее шестнадцатеричное значение в коде EBCDIC:

 положить y hex16 .;
421F800000000000
   ('F4F2F1C6F8F0F0F0F0F0F0F0F0F0F0F0'x) 

Результат показывает шестнадцатеричное значение для CMS с плавающей запятой. Представительство 31.5. Значение числа с плавающей запятой выглядит следующим образом: первый бит этого числа является битом знака, а следующие семь битов - характеристика или показатель степени.Поскольку бит знака равен 0, число положительное. Чтобы вычислить показатель степени из характеристики, необходимо вычесть шестнадцатеричное число. 40 из числа. Вычитание '40'x из' 42'x дает разницу в '02'x. Таким образом, показатель степени равен 2 16 . Последняя часть числа с плавающей запятой число, биты с 8 по 63, представляет дробь. Поскольку показатель степени равен 2 16 , точка системы счисления перемещается на два места вправо, давая значение '1F.8'x, что является шестнадцатеричным эквивалентом десятичного 31.5.

Если вы установите переменную Y равной -31,5, вы получите следующий результат с указанной шириной 16:

 C21F800000000000 ('C3F2F1C6F8F0F0F0'x) 

Единственное отличие этого примера от первого Примером является изменение первой цифры с «4'x» на «C'x». Это происходит потому что бит знака был изменен с 0 на 1, если вы установите переменную Y равно -31,5.

Однако, если вы измените формат на HEX15. во-первых Например, результат записывает следующее шестнадцатеричное значение в коде EBCDIC:

 '00000000000001F'x (' F0F0F0F0F0F0F1C6'x) 

Этот пример иллюстрирует результат, когда значение ширины меньше 16.Здесь система SAS сначала преобразует 31,5 в целое число путем усечения числа до 31. Затем результат печатается в указанное количество шестнадцатеричных цифр.

При ширине менее 16 отрицательное число с плавающей запятой число сначала обрезается до целого числа, а затем печатается с дополнением до двух форма. Следовательно, когда формат HEX15. указано для Y = -31,5, результат составляет:

 FFFFFFFFFFFFFE1 ('C6C6C6C6C6C6C5F1'x) 

Авторские права 1999 г., SAS Institute Inc., Кэри, Северная Каролина, США. Все права защищены.

Какой формат у шестнадцатеричных файлов Intel (.hex)?

HEX часто загружается с ПК в систему разработки и запускается из ОЗУ. HEX также можно преобразовать в двоичные файлы и запрограммировать в устройство конфигурации.

Пример HEX показан ниже:

: 10008000AF5F67F0602703E0322CFA92007780C361
: 1000
  • 9001C6B7EA7CA9200FE10D2AA00477D81
    : 0B00A00080FA92006F3600FFC34600076C

    Формат этого файла:

    Первый символ (:) = начало записи
    Следующие два символа = длина записи (в этом примере 10h)
    Следующие четыре символа = адрес загрузки (в этом примере 0080h)
    Далее два символа = тип записи (см. ниже)
    Остальные символы = фактические данные
    Последние два символа = контрольная сумма (т.е.е., сумма всех байтов + контрольная сумма = 00)

    Последняя строка файла особенная и всегда выглядит как последняя строка, показанная выше. Типы записей HEX показаны ниже:

    00 = Запись данных
    01 = Запись конца файла
    02 = Запись адреса расширенного сегмента
    03 = Запись адреса начального сегмента
    04 = Запись расширенного линейного адреса
    05 = Запись начального линейного адреса

    У меня к вам вопрос.

    Преобразования системы счисления

    При написании программ для микроконтроллеров мы обычно используем 3 разных системы счисления: десятичную, двоичную и шестнадцатеричную (или шестнадцатеричную). Мы используем десятичные числа, потому что они естественны; так мы считаем. К сожалению, компьютеры так не считают. Поскольку компьютеры и микроконтроллеры могут использовать только единицы и нули, для их подсчета используются последовательности этих чисел. Это двоичная система счисления. Двоичные числа обычно начинаются с символа «0b», который не является частью числа.Иногда они также подразделяются на группы по 4 цифры, чтобы облегчить их чтение, а также облегчить их привязку к шестнадцатеричной системе счисления. Пример двоичного числа - 0b0100.1011. Точки в номере ничего не обозначают, они просто облегчают чтение числа.

    Двоичная система проста для понимания, но для использования двоичной системы для представления больших чисел требуется много цифр. Шестнадцатеричная система может представлять гораздо большие числа с использованием меньшего количества символов и очень напоминает двоичные числа.Шестнадцатеричные числа обычно начинаются с префикса «0x», который не является частью числа. Одна шестнадцатеричная цифра может представлять четыре двоичных цифры!

    Двоичные числа могут состоять только из единиц и нулей; обычно двоичное число состоит из 8 цифр (или кратно 8), если оно используется в каком-либо компьютере (или микроконтроллере). Полезно знать, как преобразовать двоичное число в десятичное и наоборот. Итак, как нам переводить между системами счисления? Сначала рассмотрим, как мы определяем значение десятичного числа.0). Есть два важных числа, которые мы должны знать, чтобы «деконструировать» число - основание системы счисления и расположение цифры в числе. Основание десятичного числа - 10. Когда мы преобразуем число 268, 2 - это вторая цифра, 6 - первая цифра, а 8 - нулевая цифра. Каждую цифру необходимо масштабировать в соответствии с ее местом в числе. Масштаб цифры - это основание системы счисления, возведенное в степень расположения цифры в числе. Таким образом, каждое число масштабируется, а затем все масштабированные цифры складываются, чтобы найти общее значение числа.0), что равно 181.

    0b1011.0101. Какой совершенно неэффективный способ набора числа! Но мы можем представить одно и то же двоичное число, используя только 2 шестнадцатеричные цифры. Однако сначала мы начнем с преобразования шестнадцатеричного (шестнадцатеричного) числа в десятичное, как мы это сделали для двоичного числа. Как насчет 0xB5? Чего ждать?! Префикс 0x используется в коде, чтобы указать, что число записывается в шестнадцатеричном формате. Но что там делает «Би»? Шестнадцатеричный формат имеет основание 16, что означает, что каждая цифра может представлять до 16 различных значений.0) или 181.

    Знание того, как преобразовать двоичное и шестнадцатеричное в десятичное, важно, но наиболее полезным преобразованием чисел, вероятно, является преобразование из шестнадцатеричного в двоичное. Эти две системы нумерации действительно очень хорошо работают вместе. Системы счисления связаны таким образом, что одна шестнадцатеричная цифра представляет ровно 4 двоичных цифры, и поэтому две шестнадцатеричные цифры могут представлять 8 бит (или двоичных цифр). Вот таблица, которая показывает, как каждая шестнадцатеричная цифра связана с двоичной системой:

    Двоичное значение Шестнадцатеричное значение
    0000 0
    0001 1
    0010 2
    0011 3
    0100 4
    0101 5
    0110 6
    0111 7
    1000 8
    1001 9
    1010 A
    1011 B
    1100 C
    1101 D
    1110 E
    1111 F

    Например, чтобы преобразовать шестнадцатеричное число 0x1C в двоичное, мы должны найти соответствующее двоичное значение для 1 и C и объединить их.Итак, 0x1C в двоичном формате - это 0b0001.1100. Если мы хотим вычислить шестнадцатеричное значение двоичного числа, мы просто пойдем другим путем. Чтобы найти шестнадцатеричное представление двоичного числа 0b0010.1011, мы сначала находим шестнадцатеричное значение для 0010, затем шестнадцатеричное значение для 1011 и объединяем их; шестнадцатеричное значение будет 0x2B.

    Существует множество бесплатных инструментов для преобразования между этими системами нумерации, просто «преобразование шестнадцатеричных чисел в Google». Если вы используете Windows в качестве операционной системы, у вас есть отличный инструмент, встроенный в калькулятор.Просто переключите калькулятор в научный режим, и вы можете конвертировать между системами счисления, набрав число, а затем изменив формат калькулятора!

    srec_ascii_hex (5): формат файла Ascii-Hex - справочная страница Linux

    Имя

    srec_ascii_hex - Формат файла Ascii-Hex

    Описание

    Этот формат также известен как формат Ascii-Space-Hex или Ascii-Hex-Space . Если вы знаете, кто изобрел этот формат, дайте мне знать.если ты есть лучшее или более полное описание, я бы тоже хотел это знать.

    Файл начинается с символа начала текста (STX или Control-B) (0x02). Все, что было до STX, игнорируется.

    Каждый байт данных представлен двумя шестнадцатеричными символами, за которыми следует «символ выполнения». Символ выполнения по умолчанию - пробел, хотя многие программы, которые пишут этот формат, пропускают символ пробела, непосредственно предшествующий концу строки.

    Адрес для байтов данных устанавливается с использованием последовательности символов $ A nnnn , где nnnn - это 4-символьный ascii. представление адреса.Запятая обязательна. В адресной записи нет необходимости, если нет пробелов. Неявно файл начинает адрес 0, если перед первым байтом данных адрес не устанавливается.

    Файл заканчивается символом конца текста (ETX или Control-C) (0x03). Все, что следует за ETX, игнорируется.

    Также возможно указать текущую 16-битную контрольную сумму, используя последовательность символов $ S nnnn , хотя обычно это появляется после символа ETX и поэтому часто игнорируется.

    Варианты форм

    В дополнение к пробелу, символ выполнения также может быть в процентах (%), который называется форматом «ascii-шестнадцатеричный процент», апострофом (') или запятой (,). Формат "ascii-hex-comma". В файле должен использоваться один и тот же символ выполнения.

    Если символ выполнения - запятая, команды адреса и контрольной суммы заканчиваются точкой (.), А не запятой (,).

    Множитель размера

    Как правило, размер двоичных данных увеличивается примерно на 3.C

    Авторские права

    srec_cat версия 1.56
    Авторские права © 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010 Питер Миллер

    Программа srec_cat поставляется СОВЕРШЕННО БЕЗ ГАРАНТИЙ; для получения дополнительных сведений используйте команду ' srec_cat -VERSion License '. Это бесплатное программное обеспечение, и вы могут распространять его при определенных условиях; для получения дополнительных сведений используйте команду ' srec_cat -VERSion License '.

    Автор

    Ссылка на

    srec_cat (1), srec_input (1)

    , шестнадцатеричный формат - PowerShell - SS64.com

    шестнадцатеричный формат - PowerShell - SS64.com

    Отображает файл или другой ввод как шестнадцатеричный.

     Синтаксис
          Format-Hex [-Encoding {Ascii | UTF32 | UTF7 | UTF8 | BigEndianUnicode | Unicode}]
             -InputObject  Object  [-Raw] [ CommonParameters ]
    
          Format-Hex -LiteralPath  String  [] [ CommonParameters ]
    
          Format-Hex [-Path]  String  [] [ CommonParameters ]
    
    Ключ:
       -Кодирование  Строка 
          Задает тип кодировки символов, используемый в файле, который этот командлет форматирует как шестнадцатеричный.В
          допустимые значения для этого параметра: Ascii, UTF32, UTF7, UTF8, BigEndianUnicode,  Unicode 
          Значение по умолчанию - Юникод.
    
       -InputObject  Объект 
          Используется для ввода в трубопровод.
          Входные данные конвейера поддерживают только определенные скалярные типы и экземпляры [system.io.fileinfo] для конвейерной передачи из Get-ChildItem.
          Поддерживаемые скалярные типы: [string], [byte], [int], [int32], [long], [int64]
            
       -LiteralPath  Строка  []
          Массив буквальных путей к элементам.Этот параметр не принимает подстановочные знаки.
          Чтобы указать несколько путей к файлам, разделите пути запятыми.
          Чтобы использовать подстановочные знаки, вместо этого укажите параметр -Path.
            
          Если этот параметр включает escape-символы, заключите путь в одинарные кавычки.
            
       -Path  String  []
          Путь к файлам. Используйте точку (.), Чтобы указать текущее местоположение.
          Подстановочный знак (*) разрешен и может использоваться для указания всех элементов в местоположении.Если параметр Path включает escape-символы, заключите путь в одинарные кавычки.
          Чтобы указать несколько путей к файлам, разделите пути запятыми.
            
       -Сырой
          По умолчанию Format-Hex выбирает компактный вывод числовых типов данных: однобайтовые или двухбайтовые последовательности.
          используются, если значение достаточно мало. Параметр Raw отключает это поведение. 

    Стандартные псевдонимы для шестнадцатеричного формата: fhx

    Format-Hex отображает файл или другой ввод в виде шестнадцатеричных значений.Чтобы определить смещение символа из вывода, добавьте число в крайнем левом углу строки к числу в верхней части столбца для этого символа. Этот командлет может помочь вам определить тип поврежденного файла или файла, который может не иметь расширения имени файла. Запустите этот командлет, а затем проверьте результаты на предмет информации о файле.

  • Добавить комментарий

    Ваш адрес email не будет опубликован. Обязательные поля помечены *