Главная / Руководства / Порядок байтов (endianness)

Порядок байтов (endianness)

Порядок байтов — это порядок, в котором многобайтовое число хранится в памяти.

Прямой и обратный порядок байтов

Прямой порядок (big-endian) хранит старший байт первым (по младшему адресу), а обратный порядок (little-endian) хранит первым младший байт.

Пример

При сохранении шестнадцатеричного 0x1234 прямой порядок располагает байты как 12 34, а обратный — как 34 12.

Процессоры x86 используют обратный порядок (little-endian), а сетевые протоколы обычно применяют прямой порядок (big-endian, сетевой порядок байтов).

Почему это важно

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