データ構造アライメント
データ構造アライメント(データこうぞうアライメント、英語: data structure alignment)は、コンピュータのメモリ(主記憶装置)内のデータにアクセス(読み書き)する際に、メモリ上の位置の調整を行うことである。
そこには、別々だが関連する2つの問題、すなわち、データ整列とデータ構造パディングがある。最新のコンピュータがメモリアドレスを読み書きする場合には、ワードサイズのチャンク(32ビットシステムの場合は4バイトのチャンク)単位で実行される。データ整列とは、ワードサイズの倍数に等しいメモリアドレスにデータを配置することであり、CPUがメモリを処理する方法によってシステムのパフォーマンスが向上する。データを整列させるには、最後のデータ構造の終端部分と次のデータ構造の開始部分の間に未使用のバイトを挿入する必要があり、これを「データ構造パディング」という。
例えば、コンピュータのワードサイズが4バイトの場合(バイトは、ほとんどのコンピュータで8ビットを意味するが、一部のシステムでは異なる可能性がある)、読み取るデータは4の倍数のメモリアドレスにある必要がある。