読者です 読者をやめる 読者になる 読者になる

エンディアン

メモ

1-4byteそれぞれセットのデータが以下の順番のとき、

1 byte  0x0a       # char 10
2 byte  0x0a0b     # short 2571
3 byte  0x0a0b0c
4 byte  0x0a0b0c0d # int 168496141

この順番のまま先頭アドレス(小さい値のアドレス)から順に格納される場合はビックエンディアン。4byteのデータを32bit整数だとすると、上位ビット(ビック)が先に来るから。

逆の順番に格納される場合は

1 byte  0x0a
2 byte  0x0b0a
3 byte  0x0c0b0b
4 byte  0x0d0c0b0a

これはリトルエンディアン。4byteのデータを32bit整数だとすると、下位ビット(リトル)が先に来るから。

x386はリトルエンディアン。SPARC、PPC、ネットワークはビックエンディアン。