Двоичный файл

Материал из Википедии — свободной энциклопедии
Перейти к: навигация, поиск

Двоичный (бинарный) файл — файл, в котором данные представлены в такой же форме, в какой они хранятся во внутренней (основной, оперативной) памяти. А поскольку при хранении информации в ЭВМ используется двоичная система счисления, то «в честь ее» эти файлы и называются двоичными. Двоичные файлы обычно "противопоставляются" текстовым, в которых информация (текстовая информация) представлена в виде кодов текстовых символов определенной кодовой таблицы (ASCII, Unicode). К примеру, целое число в текстовом и двоичном файле будет представлено в разных формах. Десятичное число 123 в текстовом файле будет представлено побайтно (для ASCII, к примеру), посимвольно: 00110001b (31h), 00110010b (32h), 00110011b (33h), а в двоичном файле: если оно беззнаковое, однобайтное, для простоты, 01111011b. b указывает на двоичную систему счисления, h - на шестнадцатиричную. Символы цифр в таблице ASCII начинаются со смещения 30h. Таким образом, в текстовом файле n-значное десятичное число будет занимать n байт, а в двоичном - приблизительно, более, чем в два раза меньше. Казалось бы, двоичное представление лучше и экономичнее, но кодирование символьной текстовой информации осуществляется при помощи кодовых таблиц - на них построен принцип представления текстовой информации в ЭВМ. В широком смысле, на самом деле любой файл по своей природе является двоичным, т.к. на физическом уровне, как правило, во внешней памяти ЭВМ (НЖМД), он представляет собой массив байт.

Визуализация[править | править исходный текст]

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

 октетов   кол-во бит   шестнадцатеричное   восьмеричное  десятичное
 беззнаковое 
десятичное
знаковое
1 8 00

FF
000

377
0

255
-128

127
2 16 0000

FFFF
000000

177777
0

65535
-32768

32767
4 32 00000000

FFFFFFFF
00000000000

37777777777
0

4294967295
-2147483648

2147483647

Нередко, помимо числовых значений байт, выводятся так же символы кодовой страницы, например ASCII. Нижеследующий пример показывает т. н. классический дамп (пооктетное шестнадцатеричное представление по 16 октетов в строке, с печатными ASCII-символами справа) начала PNG-файла логотипа Википедии:

00000000  89 50 4e 47 0d 0a 1a 0a  00 00 00 0d 49 48 44 52  |.PNG........IHDR|
00000010  00 00 00 87 00 00 00 a0  08 03 00 00 00 11 90 8f  |................|
00000020  b6 00 00 00 04 67 41 4d  41 00 00 d6 d8 d4 4f 58  |.....gAMA.....OX|
00000030  32 00 00 00 19 74 45 58  74 53 6f 66 74 77 61 72  |2....tEXtSoftwar|
00000040  65 00 41 64 6f 62 65 20  49 6d 61 67 65 52 65 61  |e.Adobe ImageRea|
00000050  64 79 71 c9 65 3c 00 00  03 00 50 4c 54 45 22 22  |dyq.e<....PLTE""|
00000060  22 56 56 56 47 47 47 33  33 33 30 30 30 42 42 42  |"VVVGGG333000BBB|
00000070  4b 4b 4b 40 40 40 15 15  15 4f 4f 4f 2c 2c 2c 3c  |KKK@@@...OOO,,,<|
00000080  3c 3c 3e 3e 3e 3a 39 39  04 04 04 1d 1d 1d 35 35  |<<>>>:99......55|
00000090  35 51 50 50 37 37 37 11  11 11 25 25 25 0d 0d 0d  |5QPP777...%%%...|
000000a0  27 27 27 1a 1a 1a 38 38  38 2a 2a 2a 08 08 08 20  |'''...888**... |
000000b0  20 20 17 17 17 2e 2e 2e  13 13 13 bb bb bb 88 88  |  ..............|

Инструменты[править | править исходный текст]

Для визуализации[править | править исходный текст]

Для редактирования[править | править исходный текст]

  • HEX-редактор
    • beye (для всех операционных систем, свободная программа)
    • hiew (для DOS, Microsoft Windows, Windows NT)
    • WinHex (для Windows)

Литература[править | править исходный текст]

  • Webster’s New World Dictionary of Computer Terms, 4th. Ed, Prentice Hall, NY, 1992. ISBN 0-671-84651-5
  • Леонтьев Б. К. Форматы файлов Microsoft Windows XP: Справочник, М.: ЗАО «Новый издательский дом», 2005. ISBN 5-9643-0059-6

См. также[править | править исходный текст]