エンディアン
Endian
元々はガリバー旅行記に出てくる、卵をとがった方(小さい方)から割る人々を Little Endian、丸い方(大きい方)から割る人々を Big Endian と読んでいたことから。
多くのコンピュータでは、数値データをバイト単位(8bit単位)でメモリ上に格納している。
8bit を超える数値は8bitごとに区切って保存することになる。
0x1234 を 0x34 0x12 の順に格納する。
0x1234 を 0x12 0x34 の順に格納する。
リトルエンディアンの利点
ビット幅を拡張しても、LSB のアドレス位置が同じになる。これは機械的な処理が作りやすい。
0x1234 は 0x34 0x12 として並ぶ。
0xabcd1234 は 0x34 0x12 0xcd 0xab として並ぶ。
ビッグエンディアンの利点
普通の人間の認知では、値が大きい方から順に書くのが普通。(位取り記数法)
0x1234 は 0x12 0x34 として並ぶ。
0xabcd1234 は 0xab 0xcd 0x12 0x34 として並ぶ。