Bin-файл не только сохраняет 0s и 1s, ASCII или иначе


-4

После проверки двоичного файла and according to convincing evidence, .bin расширения файлов должны обозначать тип файла, который сохраняет свои данные как 0 и 1, или 31/32 в ASCII hex (коды символов ASCII для 1 и 0). При входе в файл, который я заметил, что это не просто хранить 0 и 1:

enter image description here

Первые шестнадцать байт попадают в возможное значение 8-битном (диапазон: 0-256), что имеет смысл, так как каждое значение является байтом. Но мой вопрос заключается в том, что он называется «bin», почему он хранит значения, как каждый другой файл? В чем разница? Значения не равны 1s и 0s, но значения падают где-то между 0-256 на байт. Это не сводится к мне.

Почему он называется двоичным файлом, когда он хранит значения в байтах так же, как и любой другой файл? Как бит отличается от jpeg?

  0

«в соответствии с убедительными доказательствами» - * нигде * в том, что «доказательства» говорится, что «двоичный» получает данные хранятся «в виде 0 и 1, или 31/32 в ASCII гекс». На самом деле это довольно хороший ответ на ваш вопрос. 22 дек. 132013-12-22 01:21:24

  0

Честно говоря, любой может использовать любое расширение файла, которое они хотят, поэтому правильная проверка типа файла - это поиск магического номера. 06 ноя. 162016-11-06 02:44:26

9

Из статьи Википедии, к которой вы связаны между собой:

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

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

От http://en.wikipedia.org/wiki/Hexadecimal:

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

Если вы предпочитаете, вы можете использовать шестнадцатеричный редактор, такой как 010 Editor, который с радостью покажет вам содержимое файла как 0 s и 1 s вместо шестизначного формата (View --> Edit As --> Binary в меню программы ba р).

  0

Если все данные хранятся в двоичном формате, то почему существует конкретный файл с именем .bin? Все на компьютере находится в двоичном формате, так что же является целью двоичного файла? Кроме того, я не очень хорошо понимаю шестерку, но я делаю двоичный код. 21 дек. 132013-12-21 19:57:48

+2

Да, на самом низком уровне носители хранят все в двоичных (даже текстовых файлах). Расширения файлов (например, '.bin') предназначены в первую очередь для указания пользователю типа содержимого в файле. Я не знаю, на какой файл вы смотрите, но кто-то решил назвать его '.bin'. Само расширение не изменяет содержимое файла и не всегда отражает фактическое содержимое файла. Например, вы можете переименовать файл '.jpg' в' .bin', и ваш графический редактор все равно сможет открыть файл как прекрасный файл JPEG. 21 дек. 132013-12-21 20:00:53

  0

Просто указать * человеку *, что содержимое файла не является чем-то простым, например «текст». Расширение '.txt' является сильным индикатором, и он отлично работает, чтобы открыть файл с помощью текстового редактора. Для '.bin' это означает обратное. 21 дек. 132013-12-21 20:01:29

  0

Итак, ваши точки в том, что, помимо двоичных чисел, файл .bin обычно не анализируется и не читается обычным программным обеспечением, так как это типичный файл, то есть текст, .txt, video, .mp4 и т. Д. Расширение файла, я знаю , не обозначает формат, но часто используется для его четкого отличия, например, от другого формата. Файл .bin не закодирован в формате ASCII для Notepad для анализа и отображения, но его формат вполне может быть понят Intel Celeron, поэтому разница - это просто схемы форматирования/кодирования. Это то, что вы, ребята, имеете в виду? 21 дек. 132013-12-21 20:18:14

  0

Нет, для того, чтобы ваш Intel Celeron «понял» содержимое файла, он должен был быть ассемблерным кодом, и, похоже, это не так для файла, который вы показали выше. 21 дек. 132013-12-21 20:45:04


5

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

0 hex is 0000 binary 
1 hex is 0001 binary 
2 hex is 0010 binary 
3 hex is 0011 binary 
4 hex is 0100 binary 
5 hex is 0101 binary 
6 hex is 0110 binary 
7 hex is 0111 binary 
8 hex is 1000 binary 
9 hex is 1001 binary 
a hex is 1010 binary 
b hex is 1011 binary 
c hex is 1100 binary 
d hex is 1101 binary 
e hex is 1110 binary 
f hex is 1111 binary 
  0

Я не новичок в двоичном или шестнадцатеричном, и вам не нужно было показывать мне таблицу. Мой вопрос касался различий в кодировке между bin и другими форматами и что все они равны 0 и 1 с квадратными волнами на уровне схемы. Моя путаница на самом деле является различием в кодировании, которое я считаю, потому что все файлы закодированы на самом низком уровне в двоичном формате, поэтому я не совсем понял разницу между бином и, скажем, jpeg, используя тот же самый способ логики. Но, по-видимому, разница, по-видимому, заключается в схемах кодирования. 21 дек. 132013-12-21 20:21:31

  0

Я также не считаю hexademical проще, чем двоичный. Как ни странно, двоичный код - это то, что я узнал в первую очередь, и шестнадцатеричный кажется более сложным, чем моя голова. 21 дек. 132013-12-21 20:30:50

  0

@confusedforreal: в котором эта таблица поставляется в * реальной * удобной. Потому что, если вы знаете, что один полубайт (4 бит) - это одна шестнадцатеричная цифра, эта таблица очень полезна для понимания. 22 дек. 132013-12-22 01:28:13