この投稿では、エンディアン(Endianness)について説明致します。
エンディアンは、複数バイトのデータをメモリや通信データに配置したときの並び順です。エンディアンには、ビッグエンディアン(Big-Endianness)とリトルエンディアン(Little-Endianness)の2つのタイプがあります。
ビッグエンディアンは、人に分かりやすいようにデータを先頭から順番に並べます。TCP/IPは、ビッグエンディアンに統一しています。
リトルエンディアンは、効率的な数値計算できるようにデータを最後から順に並べます。Intel系CPUは、リトルエンディアンを採用しています。
ご注意
・ 通信でバイト単位にデータを送受信する場合
・ リトルエンディアンでshort型やlong型をchar型のポインタ変数で操作する場合
・ 異なるエンディアンのシステムにプログラムを移植する場合