0

重複の可能性:
なぜ x86 はリトル エンディアンなのですか?

個人的には、多くの人がこれに同意すると思いますが、ビッグエンディアンのバイト順表記の方が読みやすく、理解しやすいことがわかります。ビッグ エンディアンのバイト順は、CPU にとってリトル エンディアンのバイト順と同じくらい簡単に処理できると思います。

The Dark Corners of x86の記事で、David Chisnall は次のように述べています。

「[...] 当時は良いアイデアのように見えた機能が徐々に追加され、最終的には現代の x86 アーキテクチャとして知られる取り残されました。」

ビッグ エンディアンのバイト順は、特に浮動小数点型の場合は処理が簡単である必要があるため、リトル エンディアンはビッグ エンディアンよりもどのような利点がありますか?

4

2 に答える 2

1

リトル エンディアンはハードウェアにとってより簡単で、ビッグ エンディアンは人間にとってより簡単であることがわかりました。今日では、エンディアンとは無関係にバイトレーンがすべて押し出されており、一部のアーキテクチャでは両方を実行しているため、まったく問題にはなりません (ARM には big の 2 つのバージョンと little の 1 つのバージョンがあります)。可変語長命令と非境界整列転送の許可は、大きな問題と小さな問題よりもはるかに大きな問題です。

歴史的な好みと、それに付随する神話や意見のために、今日でも強い好みがあります。宗教や政治と同様に、これはタブーな話題であり、大きな議論につながる可能性があります。結局のところ、各党はそれぞれの側の支援においてのみ強力であり、実際の改宗者はまれです. これらの強い意見は、新しいデザインがいずれかを宣言するためのソースとなる可能性があります。

arm がプロセッサの世界を支配し、x86 がデスクトップ、ラップトップ、サーバー、pci(e) 規則などをカバーしているため、好むと好まざるとにかかわらず、私たちは本当にリトル エンディアンの世界に住んでいます。

「システムエンジニアリングを行う」場合、インターフェース仕様がどのバイトがどこにあるかを定義し、両側がインターフェース仕様に準拠するため、エンディアンの問題は発生しません。

于 2012-07-25T01:33:37.110 に答える
1

なし。

アーキテクチャがビッグ エンディアンまたはリトル エンディアンの順序使用する特定の理由は実際にはありません。それぞれを好む人がいます。両方を行うことができるいくつかのチップさえありました!しかし、ほとんどの場合、アーキテクチャは順序付けを選択します。そして、正当な理由があったとしても、順序を切り替えるのが理にかなっているx86コードが世界中に多すぎます。

于 2012-07-25T00:30:16.787 に答える