更新:2024/12/21
エンディアンとは?ゆるーくわかりやすく解説


はるか
エンディアン、知ってる?

ふゅか
うーん、なんとなく聞いたことあるけど、詳しくはわからないなぁ。教えて!

はるか
簡単に言うと、データをバイト単位でメモリに保存すること。
1. エンディアンの要点
エンディアンとは・・・
- バイト単位でメモリにデータを格納する方法
- 格納の順序を基準に、主にビッグエンディアンとリトルエンディアンに分けられる
- バイトオーダーとも呼ばれる
2. エンディアン
エンディアンとは、データをバイト単位でメモリに格納することです。コンピュータ内部では、数値データや文字列などがメモリに記録されますが、その記録の順序には2つの主な方式があります。それが リトルエンディアン と ビッグエンディアン です。
3. リトルエンディアン方式
リトルエンディアン方式では、データの下位バイトから順番に、メモリのアドレス番号が小さい位置に格納されます。たとえば、「12345678」という16進数の値を4バイトのメモリに保存すると、以下のように記録されます:
アドレス: 00 01 02 03
データ: 78 56 34 12
この方式は、小さいデータ(下位バイト)が最初に来るため、「リトル(小さい)」という名前が付けられています。多くのパソコンやスマートフォンで使われている Intel系のCPU では、この方式が採用されています。

はるか
リトルエンディアンは、下位バイトを先に保存する方式。
4. ビッグエンディアン方式
一方で、ビッグエンディアン方式では、データの上位バイトから順番に、メモリのアドレス番号が小さい位置に格納されます。同じ「12345678」を例にすると、次のように記録されます:
アドレス: 00 01 02 03
データ: 12 34 56 78
この方式は、大きいデータ(上位バイト)が最初に来るため、「ビッグ(大きい)」という名前が付けられています。ネットワーク機器や特定のプロセッサ では、ビッグエンディアンがよく使われます。

はるか
ビッグエンディアンは逆。上位バイトが最初。
PR