1

重複の可能性:
異なるエンディアンの利点は何ですか?

バイト順序またはエンディアンとは、メモリに格納された、またはネットワーク経由で送信された一連の要素 (ワード、バイト、またはビットなど) の順序を指します。

ビッグ エンディアン システムは最上位バイトを最初に格納し、リトル エンディアン システムは最下位バイトを最初に格納します。さらに、さらに別の順序付け規則を使用する混合エンディアン システムが存在します。

私の質問: 特定のシステム/プロセッサ/プロトコルに対して特定のバイト オーダーがどのように選択されるのですか? これらの決定に影響を与える設計上の考慮事項は何ですか? 特定のアプリケーションまたはタスクのパフォーマンスは、特定のバイト順で向上しますか? エンディアンは物理的または熱力学的な観点から重要ですか、それともバイト順は慣習と互換性の問題によって大きく左右されますか?

4

1 に答える 1

1

バイトオーダーは、慣習と互換性の問題によって大きく左右されますか?

最近では、ほとんどはい。ほとんどの選択肢は、既存のシステムと互換性を持つ必要性に基づいています。これは、Windows/Mac/Unix の改行の大失敗と何ら変わりはありません。

ただし、特定のエンディアンが特定のアプリケーションの実用的な実装上の利点を持つ場合があります。たとえば、リトルエンディアン システムとは、*(int16_t *)&my_int32範囲内の値に対して「正しい」結果が得られることを意味します。その他の例については、ウィキペディアの記事を参照してください。

于 2013-01-15T17:35:45.313 に答える