Big-endian systems and the smallest memory address I read on en.Wikipedia that &quot;Big-endian systems store the most significant byte of a word at the smallest memory address and the least significant byte at the largest. A little-endian system, in contrast, stores the least-significant byte at the smallest address.&quot;
But I don't know what is &quot;the smallest memory address&quot;, and how does &quot;Big-endianness is the dominant ordering in networking protocols, such as in the internet protocol suite, where it is referred to as network order, transmitting the most significant byte first&quot;, in those type of protocols, the first is accessed the smallest memory address and in little-endian system is accessed the memory address?
If the map of memory bytes were arranged from left to right in incremental address order, the smallest address is on the left.  The largest address is on the right.
Let's say you are storing the 32-bit value, 19088743, which is 0x01234567 in hex, at address 0x1000.  Hence, the 4-byte value will span over the 4 bytes at memory address 0x1000, 0x1001, 0x1002, and 0x1003
In big endian, the 01 is stored at 0x1000 (the smallest address) and the 67 is stored at 0x1003 (the largest address).  Exactly how you would think of it if you had never heard of little endian.
In little endian, the 01 is stored at 0x1003 (the largest address) and the 67 is stored at 0x01000 (the smallest address).
Big Endian and Network Byte Order generally mean the same thing.
Big Endian
|===================================|
| 0x1000 | 0x1001 | 0x1002 | 0x1003 |
|-----------------------------------|
|  0x01  |  0x23  |  0x45  |  0x67  |
|===================================|


Little Endian
|===================================|
| 0x1000 | 0x1001 | 0x1002 | 0x1003 |
|-----------------------------------|
|  0x67  |  0x45  |  0x23  |  0x01  |
|===================================|