How this works. Byte order decides how a multi-byte value is laid out in memory.
Big-endian stores the most significant byte at the lowest address, which is how the value reads
on paper and how network protocols send it. Little-endian stores the least significant byte
first, which is what x86 and ARM do in practice. Swapping is a pure byte reversal — the bits
inside each byte never move. This is what htonl, __builtin_bswap32 and
Modbus register order are all doing, and reading a value with the wrong order is why
0x12345678 arrives as 0x78563412.
The value entered is wider than the selected word width, so only the low bytes are shown.