• 締切済み

情報処理試験の問題がわかりません。助けてください。

情報処理試験の問題がわかりません。助けてください。 ある整数値を、負数を2の補数で表現する2進表記法で表すと最下位2ビットは”11”であった。10進表記法のもとで、その整数値を4で割ったときの余りに関する記述として、正しいものはどれか。ここで、除算の商は、絶対値の端数が切り捨てられるものとする。 - ア その整数値が正であれば3 イ その整数値が負であれば3 ウ その整数値が負であればー3 エ その整数値の正負にかかわらず0 解答 ア - 情報処理試験の問題です。 どなたかわかりやすく、解説していただけないでしょうか? よろしくお願い致します。

みんなの回答

  • katchine
  • ベストアンサー率0% (0/1)
回答No.2

この問題を理解するためには、2点が必要かと思います。 (1)2の補数を知っている (2)2進数を10進数で考えられる アのみ説明させて頂きますと。。。 (1)「正であれば」ということは、2の補数へ変換しなくても良いということなので11は変わりません。もし負の数であれば、全部0⇔1して+1という操作をするので、下2桁の11は01に変化してしまいます。 (2)10進数で123の数値を100で割ると、下2桁が23が余りとなります。簡単に言うと、123の中に100はいくつ入っていますか? そして残りはいくつですか?ということです。2進数の場合も同じで、2進数111を100で割ると余りは11になります。111の中に100はいくつ入っていますか? そして残りはいくつですか? たしかに11になります。10進数で考えると、7を4で割ると余りは3になります。つじつまが合うと思います。 こんな感じでいかがでしょうか?

herojhp
質問者

お礼

分かりやすく説明いただいてありがとうございました 分かりました

  • kimosu
  • ベストアンサー率50% (9/18)
回答No.1

ある整数をXAB11とする。 <ある整数が正の場合> X=0である。   10進数に直すと 0AB11 = 1*2^0 + 1*2^1 + X*2^2 + X*2^3 = 1 + 2 + 4A + 8B = 3 + 4(A+2B) となるので4で割ると3余る <ある整数が負の場合> X=1である。   10進数に直すと 1AB11 = -{2^4 - 3 - 4(A+2B)} = -{4(4-A-2B) - 3} (AとBは1か0のどちらか) = -{4の倍数 - 3} となり4で割ると-1余る。

herojhp
質問者

お礼

分かりやすく説明いただいてありがとうございました 分かりました

関連するQ&A