2012-01-27 13 views
-1

私のコンピュータには、ビッグエンディアンの順序でintが格納されています。例えば、0xFF440022は4 282 646 562です。しかし、リトルエンディアンの順番で文字列データを格納しますか?つまりこんにちは世界は のようなものです。どうしてこれなの?このマシンはビッグエンディアンかリトルエンディアンかと考えられますか?エンディアンが混在しています

+7

コンピュータシステムが「リトルエンディアンの順序でストリングデータを格納する」とは意味がありません。なぜなら、文字列はバイトの重要性がないため、「ビッグエンド」または「リトルエンド」を持たないからです。文字列は1バイトの値のシーケンスであり、バイトは私が知っている限り、決して後方に個別に格納されていません。 – Borealid

+0

このデータはどのように見えますか?あなたのデバッガがあなたの手を引っ張っているように私には聞こえる。 –

+0

XSPIMは.asciiz "\ n Result"のように "eR_lf tlus"を格納します.lfは改行です。どうしてこれなの? –

答えて

5

1バイト(char)はエンディアンを持たない。文字列は単純に左から右に格納され、一番左の文字が一番下のアドレスに格納されます。

+0

x86コンピュータでは、XSPIMは.asciiz "\ n Result"のように "eR_lf tlus"を格納します.lfは改行です。どうしてこれなの? –

+4

これはありません。欠点は、バイトではなく32ビットの整数を読み取っていることです。 –

関連する問題