Шестнадцатиричный редактор на русском

Шестнадцатиричный редактор на русском

Hex-редактор (англ. hex-editor ), шестнадцатеричный редактор — приложение для редактирования данных, в котором данные представлены в «сыром виде» — как последовательность байтов. Он может быть как отдельным самостоятельным приложением, так и компонентом другого, более сложного приложения, такого как дизассемблер, отладчик, интегрированная среда разработки и т. п.

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

  • Наибольшую популярность получили платформы с 8-битным байтом. В таких платформах байт может принимать 2 8 =256 значений в диапазоне от 0 до 255. Число 25610, записанное в шестнадцатеричной системе, является круглым трёхзначным числом — 10016.
  • То, что это число является трёхзначным, означает, что для представления любого числа в диапазоне 0—255 требуется не более 2 разрядов.
  • То, что это число является круглым, означает, что для представления будут использованы все возможные комбинации цифр, и не останется неиспользованных (например, в случае использования десятичной системы, неиспользованными остаются комбинации, соответствующие числам от 256 до 999).
  • При использовании шестнадцатеричной системы получается, что правая цифра соответствует младшим четырём битам байта, а левая цифра в записи — старшим 4 битам. Поэтому любые операций над 4-битными блоками, выровненными по границе байта, можно упрощённо производить как операции над соответствующими цифрами.
  • 16 — минимальное основание системы счисления, при котором для записи достаточно двух разрядов. Системы с меньшим основанием потребовали бы уже три (и более) разряда, а возможность уложиться в один разряд обеспечила бы только система счисления с основанием 256, которая совершенно неприменима на практике из-за большого числа цифр в ней.
  • Очевидно, что, например, для платформ с 9-битовым байтом использовались бы трёхзначные восьмеричные числа, а аналогичное по функциональности приложение называлось бы Oct-редактором.

    Читайте также:  Можно ли поменять оператора сохранив номер

    Данные, которые отображает и позволяет редактировать Hex-редактор, могут быть:

    Содержание

    Интерфейс [ править | править код ]

    Hex-редактор отображает данные в виде матрицы, каждая ячейка которой соответствует одному байту, записанному в шестнадцатеричной системе счисления в виде двухзначного числа (с ведущим нулём, если он требуется). Количество столбцов матрицы является степенью двойки, чаще всего используются 16 или 8 колонок, иногда 4. Число строк зависит от количества байтов, которые требуется отобразить/отредактировать. В случае использования 16 колонок одна строка соответствует одному параграфу.

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

    • Слева от матрицы отображается линейка (на рисунке показана синим цветом) из чисел: каждой строчке соответствует число, означающее адрес/смещение первого байта этой строчки. Шаг адресов при этом равен количеству колонок.
    • Сверху от матрицы отображается другая линейка (на рисунке показана зелёным цветом) из чисел: над каждой колонкой отображается смещение байта, стоящего в этой колонке, относительно первого байта соответствующей строчки. Сумма числа, соответствующего i -той строке, и числа, соответствующего j -той колонке является адресом/смещением байта (i;j) , стоящего на пересечении взятой строки и взятого столбца.
    • Справа от матрицы могут отображаться те же данные, но в другой интерпретации. Наиболее часто используется альтернативное отображение данных как текста в кодировке ASCII (на рисунке показаны цветом фуксия), при этом байты, значения которых соответствуют непечатным символам, отображаются как точки ( · ). Многие редакторы позволяют выбрать произвольную кодировку для режима отображения текста. Вариант с отображением данных как текста встречается в Hex-редакторах общего назначения. В редакторах же, являющихся частью какой-либо специальной программы, например отладчика, обычно доступны другие режимы, такие как листинга дизассемблирования, подсказок об адресах, и другие специфичные для приложения режимы.

    Большинство редакторов позволяют совершать редактирование как в левой половине, так и в правой (при её наличии). При этом совершаемые изменения когерентны [1] .

    Читайте также:  Потери и приобретения россии после распада ссср

    Простые редакторы позволяют только менять значение выбранных байтов по отдельности. Продвинутые — редактировать совокупности байтов как цельные блоки [2] , выполнять поиск по последовательностям или шаблонам последовательностей.

    Hex-редакторы для редактирования образов дисков могут включать в себя функции по восстановлению повреждённой файловой системы или случайно удалённых файлов.

    Использование [ править | править код ]

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

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

    Поскольку Hex-редактор является достаточно универсальным инструментом, описать все варианты его применения не представляется возможным.

    Галерея [ править | править код ]

    Свободный hex-редактор KHexEdit входящий в состав KDE (kdeutils)

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

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

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

    Читайте также:  Jbl колонка bluetooth инструкция

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

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

    Рассматриваемый продукт является отличным бесплатным HEX-редактором с широким функционалом, приложение возможно использовать без установки, оно распространяется на нескольких языках (русский поддерживается). Таким образом, для того чтобы редактировать любые файлы, достаточно скачать HxD.

    Ссылка на основную публикацию
    Adblock detector