Misalkan A adalah mesin BE dan mengirim 0x44332211 mengirim data ke B yang LE. Secara default A akan menggunakan htonl 0x44332211 yang tidak lain adalah 0x44332211.
Sekarang ketika 0x44332211 mencapai B, B tahu bahwa itu adalah format BE, jadi B akan membalik dengan menggunakan fungsi htonl dan mengubahnya ke 0x11223344.
Apa artinya membalik ini? Saya membaca konsep ini dari internet. Mengapa membalik diperlukan sebelum menyimpan?
Karena dalam kasus ini membalik nilai 0x11223344 akan disimpan dalam LE seperti 0x44332211, yang berbeda dari apa yang dikirim oleh A karena B mengartikannya secara berbeda walaupun terlihat mirip?
/ * Konversi dari BE ke LE * /
Sebenarnya, membalik tidak diperlukan sebelum penyimpanan dengan cara tertentu. Ini diperlukan karena host menggunakan urutan endian kecil sehingga ketika menerima nomor lebih dari satu byte dari jaringan, ia membalik byte untuk menafsirkan angka itu dengan benar. Kita perlu membalik ini sebelum data digunakan untuk tujuan apa pun.
Sebagai analogi, bayangkan diri Anda membaca manga yang dicetak dengan cara Jepang asli (yaitu halaman yang biasanya menjadi yang terakhir sebenarnya adalah yang pertama). Jika Anda tidak mengetahui fakta ini, dan jangan "membalik" bukunya, Anda tidak akan bisa memahami ceritanya.
sumber