Byte order mark

Byte order mark

Byte Order Mark (BOM) - Unicode символ, используемый для индикации порядка байтов текстового файла. Его кодовый символ U+FEFF. По спецификации его использование не является обязательным, однако если BOM используется, то он должен быть установлен в начале текстового файла. Помимо своего конкретного использования в качестве указателя порядка байтов, символ может также указать какой кодировкой Unicode закодирован текст.

Кодировка Unicode может использовать 16-битные или 32-разрядных числа и приложение должно знать как дальше с ним поступать. Поэтому потребность в BOM возникает при обмене документами.

Использование

Если символ спецификации появится в середине потока данных, Unicode говорит, что это должно быть истолковано как «нулевой ширины неразрывный пробел» (по существу нулевой символ). В Unicode 3.2, это использование не рекомендуется использовать в пользу «Word Joiner», символа , U+2060. Это позволяет U+FEFF использоваться только в качестве спецификации.

Представление кодировки byte order marks

Encoding Representation (hexadecimal) Representation (decimal) Representation (ISO-8859-1)
UTF-8[t 1] EF BB BF 239 187 191 
UTF-16 (BE) FE FF 254 255 þÿ
UTF-16 (LE) FF FE 255 254 ÿþ
UTF-32 (BE) 00 00 FE FF 0 0 254 255 □□þÿ (□ is the ascii null character)
UTF-32 (LE) FF FE 00 00 255 254 0 0 ÿþ□□ (□ is the ascii null character)
UTF-7[t 1] 2B 2F 76 38
2B 2F 76 39
2B 2F 76 2B
2B 2F 76 2F
[t 2]
43 47 118 56
43 47 118 57
43 47 118 43
43 47 118 47
+/v8
+/v9
+/v+
+/v/
UTF-1[t 1] F7 64 4C 247 100 76 ÷dL
UTF-EBCDIC[t 1] DD 73 66 73 221 115 102 115 Ýsfs
SCSU[t 1] 0E FE FF[t 3] 14 254 255 □þÿ (□ is the ascii "shift out" character)
BOCU-1[t 1] FB EE 28 251 238 40 ûî
GB-18030[t 1] 84 31 95 33 132 49 149 51 □1■3 (□ and ■ are unmapped ISO-8859-1 characters)
  1. 1 2 3 4 5 6 7 В этих кодировках последовательность не определяет именно порядок байтов, так как кодировка однобайтная, но эта последовательность может использоваться для определения способа кодировки.[1][2]
  2. В UTF-7 в связи с использованием base-64, четвёртый байт BOM является 001111xx в двоичном представлении, где xx зависит от следующего символа (первого после BOM). Поэтому четвёртый байт не является только частью BOM, но также содержит информацию о следующем (не BOM) символе. Для xx=00, 01, 10, 11, четвёртый байт будет, соответственно, 38, 39, 2B, or 2F при кодировке в base64. Если же следующий символ не кодируется base64, то используется 38 в качестве четвёртого байта, а следующий байт 2D.
  3. SCSU предусматривает и другие кодировки для U+FEFF, указанная последовательность является рекомендованной в UTR #6.[3]

Примечания


Wikimedia Foundation. 2010.

Игры ⚽ Нужно сделать НИР?

Полезное


Смотреть что такое "Byte order mark" в других словарях:

  • Byte-order mark — A byte order mark (BOM) is the Unicode character at code point U+FEFF ( zero width no break space ) when that character is used to denote the endianness of a string of UCS/Unicode characters encoded in UTF 16 or UTF 32. It is conventionally used… …   Wikipedia

  • Byte Order Mark — Als Byte Order Mark (BOM, dt. „Bytereihenfolge Markierung“) wird das Unicode Zeichen U+FEFF (englisch zero width non breaking space) am Anfang eines Datenstroms bezeichnet, wo es als Kennung zur Definition der Byte Reihenfolge und… …   Deutsch Wikipedia

  • Byte Order Mark — Marque d ordre des octets Pour les articles homonymes, voir BOM. Unicode Jeux de caractères UCS (ISO/CEI 10646) ISO 646, ASCII ISO 8859 1 WGL4 UniHan Équivalences normalisées NFC …   Wikipédia en Français

  • byte order mark — baitų eiliškumo ženklas statusas T sritis informatika apibrėžtis ↑Ženklas, nurodantis ↑baitų eiliškumą ↑unikodo tekste. Kodas U+FFFE. Rašomas unikodo teksto failo pradžioje. Šio ženklo baitus procesorius skaito jame nustatyta tvarka. Jeigu jis… …   Enciklopedinis kompiuterijos žodynas

  • Byte-Order — Die Byte Reihenfolge (engl.: Byte Order oder Endianness) bezeichnet die Speicherorganisation für einfache Zahlenwerte, in erster Linie die Ablage von ganzzahligen Werten (Integer) im Arbeitsspeicher. Eine Festlegung des zu verwendenden… …   Deutsch Wikipedia

  • Byte Order — Die Byte Reihenfolge (engl.: Byte Order oder Endianness) bezeichnet die Speicherorganisation für einfache Zahlenwerte, in erster Linie die Ablage von ganzzahligen Werten (Integer) im Arbeitsspeicher. Eine Festlegung des zu verwendenden… …   Deutsch Wikipedia

  • Byte order — Die Byte Reihenfolge (engl.: Byte Order oder Endianness) bezeichnet die Speicherorganisation für einfache Zahlenwerte, in erster Linie die Ablage von ganzzahligen Werten (Integer) im Arbeitsspeicher. Eine Festlegung des zu verwendenden… …   Deutsch Wikipedia

  • Network Byte Order — Die Byte Reihenfolge (engl.: Byte Order oder Endianness) bezeichnet die Speicherorganisation für einfache Zahlenwerte, in erster Linie die Ablage von ganzzahligen Werten (Integer) im Arbeitsspeicher. Eine Festlegung des zu verwendenden… …   Deutsch Wikipedia

  • Left-to-right mark — The left to right mark (abbr|LRM|left to right mark) is a non printing character used in the computerized typesetting of bi directional text containing mixed left to right scripts (such as English and Russian) and right to left scripts (such as… …   Wikipedia

  • Order of the Occult Hand — The Order of the Occult Hand is a whimsical secret society of American journalists who have been able to slip the meaningless and telltale phrase It was as if an occult hand had… in print as a sort of a game and inside joke. Contents 1 History 2… …   Wikipedia


Поделиться ссылкой на выделенное

Прямая ссылка:
Нажмите правой клавишей мыши и выберите «Копировать ссылку»