Есть такая вещь, как порядок байтов, http://ru.wikipedia.org/wiki/%D0%9F%D0%BE%D1%80%D1%8F%D0%B4%D0%BE%D0%BA_%D0%B1%D0%B0%D0%B9%D1%82%D0%BE%D0%B2
В современных x86 архитектурах принят обратный порядок (т.н. little-endian), то есть если у вас есть четырёхбайтное число 0x02014b50 , то в памяти и на диске оно будет выглядеть как 0x504b0102.
Аналогично, если бы было два двухбайтных числа 0x504b и 0x0102, они бы были записаны как 0x4b50 и 0x0102.
Собственно из-за этого некоторые предпочитают использовать массив однобайтовых чисел в качестве сигнатуры, т.к. он будет выглядеть одинаково независимо от модели представления.
Написано
Войдите на сайт
Чтобы задать вопрос и получить на него квалифицированный ответ.