И до кучи сравнение
Little и
Big Endian.
Допустим мы ввели десятичное число "
9000":
90 5F 01 00 - так значение выглядит в
Little Endian
00 01 5F 90 - так значение выглядит в
Big Endian.
Обрати внимание, что числа - одинаковые, просто направление обратное.
Big Endian - про "
слева направо",
Little Endian - про "
справа налево". Большинство данных хранятся именно в
Little Endian. Причем очень часто используется два байта из 4-х. То есть, условно если ты видишь значение из двух байт, а после идет
00 00, значит занято два байта. Однако, третий может быть занят по мере наращивания значения.
Оперируя условными числами, если мы возьмем число
50 и напишем его в тысячных цифрах, мы получим
0050. Теперь представим, что мы его разделили в стиле Hex (
00 50) и перевернули наоборот (
50 00).
Но если мы представим число
105 в тысячах, то будет
0105. Разделяем -
01 05. Перевернем -
05 01. То есть, начинает наращиваться следующее число (
01), хотя оно является предыдущим. Добавляем еще буквы с
A по
F, включаем понимание, что число
10 - это
0A, которое идет после
09 (числение-то шестнадцатеричное, а не десятичное), а
10 в
hex - это будет
16 в
Dec, и примерно понимаем, в каком виде в файле хранятся эти значения.
Вот здесь таблица есть: