エンディアンとは?ゆるーくわかりやすく解説

はるか
はるか
エンディアン、知ってる?
ふゅか
ふゅか
うーん、なんとなく聞いたことあるけど、詳しくはわからないなぁ。教えて!
はるか
はるか
簡単に言うと、データをバイト単位でメモリに保存すること。

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