平成27年度春期 応用情報技術者試験 午前 問21
16進数 ABCD1234 をリトルエンディアンで4バイトのメモリに配置したものはどれか。ここで,0〜+3はバイトアドレスのオフセット値である。

- ア 0:12 +1:34 +2:AB +3:CD
- イ 0:34 +1:12 +2:CD +3:AB
- ウ 0:43 +1:21 +2:DC +3:BA
- エ 0:AB +1:CD +2:12 +3:34
解答・解説を見る
正解:イ
AI解説
リトルエンディアンは、多バイトデータの最下位バイトを最小アドレス側から順に格納する方式である。ABCD1234をバイト単位に区切るとAB・CD・12・34で、最下位バイトは34。よってオフセット0から34,12,CD,ABの順になる。 ア: 12,34,AB,CDの並びは16ビット(2バイト)単位で前後を入れ替えただけで、バイト単位の逆順になっておらず誤り。 イ: 正解。最下位バイト34を先頭アドレスに置き、34,12,CD,ABとバイト単位で逆順に並べたリトルエンディアンの配置である。 ウ: 43,21,DC,BAはバイト内の16進1桁(ニブル)まで反転させた並びである。エンディアンはバイト単位の並び替えであり、バイト内部のビットや桁は反転しない。 エ: AB,CD,12,34は見た目どおり上位バイトから格納するビッグエンディアンの配置である。 💡 「リトルエンディアン=下位(お尻)のバイトから格納」「ビッグエンディアン=見た目の順のまま」と対で覚える。x86系CPUはリトルエンディアンを採用している。
出典:平成27年度 春期 応用情報技術者試験 午前 問21 / 独立行政法人情報処理推進機構(IPA)
※Web掲載用に表記を一部変更しています。図表はIPA公式問題冊子から引用しています。著作権はIPAに帰属します。
※Web掲載用に表記を一部変更しています。図表はIPA公式問題冊子から引用しています。著作権はIPAに帰属します。