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

http://vvcap.net/db/iTMVDXytoaUXJhefNDJy.htp

Эти два пространства памяти хранят одни и те же данные, и я пытаюсь записать их в копии, но я запутался, потому что, например, первая заданная строка с прямым порядком байтов начинается с 11, наименьшего числа, а следующая один начинается с 88, самого высокого. Может ли кто-нибудь помочь мне объяснить это?


person Gerk    schedule 23.10.2014    source источник
comment
Я думаю, что цифры здесь просто как примеры, а не как руководство к действию.   -  person William McBrine    schedule 23.10.2014


Ответы (1)


В качестве подсказки, это как смотреть на (десятичные) 32 и 57, в одном случае 3> 2, а в другом 5 <7. Они оба в порядке.

Машина обрабатывает каждую 4-байтовую строку как одно число. Смысл порядка байтов в том, как эти 4 байта расположены с точки зрения адреса памяти. Я не хочу быть более явным и рисковать лишить вас упражнения, но я считаю, что диаграмма в Википедии очень помогает визуализировать это.

http://en.wikipedia.org/wiki/Endianness

person BnWasteland    schedule 23.10.2014
comment
Спасибо за ваш ответ. Думаю, теперь я лучше понимаю. Сначала я думал, что значения будут зеркальными, но, подумав еще немного, я понял, что, поскольку индексы зеркалируются (например, индексы Big Endian первой строки равны 3 | 2 | 1 | 0, а индексы Little Endian первой строки равны 0 | 1 | 2 | 3), то значения двух расположений в этом случае будут идентичны. Просто хотел подтвердить с вами: верен ли этот вывод или мой мыслительный процесс ошибочен? - person Gerk; 23.10.2014