IPA過去問ドリル

平成23年度 特別 応用情報技術者試験 午前 問11

テクノロジ/コンピュータ構成要素

主記憶の1000番地から,表のように4バイトの整数データが格納されている。これを32ビットのレジスタにロードするとき,プロセッサのエンディアンとレジスタにロードされる数値との組合せとして,正しいものはどれか。 バイトアドレス:データ 1000:00 1001:01 1002:02 1003:03 (注:本サイトでは原問題の表を文字表記に変換しています)

出典:平成23年度 特別 応用情報技術者試験 午前 問11

正解:エ

解説

リトルエンディアンは下位アドレスに数値の下位バイトを格納する方式なので,アドレス1000〜1003の00,01,02,03を上位バイトから並べ替えると03020100になります。ビッグエンディアンは上位アドレスほど下位バイトになるので,そのままの順である00010203になります。

選択肢ごとの解説

  • 誤り。ビッグエンディアンの値02030001は,バイトの並べ方を誤って一部入れ替えたものです。
  • 誤り。リトルエンディアンの値00010203はビッグエンディアンの値であり,ビッグエンディアンの値03020100はリトルエンディアンの値です。両者が入れ替わっています。
  • 誤り。リトルエンディアンの値02030001は,バイトの並べ方を誤って一部入れ替えたものです。
  • 正しい。リトルエンディアンは下位アドレスが下位バイトになるため03020100,ビッグエンディアンは上位アドレスが下位バイトになるため00010203です。
応用情報技術者の過去問を演習モードで解く