令和3年度秋期 応用情報技術者試験 午前 問8

分野:コンピュータ構成要素|実際に出題されたIPA過去問題

演算レジスタが16ビットのCPUで符号付き16ビット整数x1,x2を16ビット符号付き加算(x1+x2)するときに,全てのx1,x2の組合せにおいて加算結果がオーバフローしないものはどれか。ここで,|x|はxの絶対値を表し,負数は2の補数で表すものとする。

  1.  |x1|+|x2|≦32,768の場合
  2.  |x1|及び|x2|がともに32,767未満の場合
  3.  x1×x2>0の場合
  4.  x1とx2の符号が異なる場合
解答・解説を見る

正解:エ

AI解説

16ビット符号付き加算では、加算する2数の符号が同じ場合にのみ、その和が表現範囲を超えてオーバフローする可能性がある。x1とx2の符号が異なる場合、和の絶対値はどちらか大きい方の絶対値以下に収まるため、いかなる値の組合せでも絶対にオーバフローは発生しない。 ア: |x1|+|x2|≦32,768という条件は特定の値の組合せに限った制約であり、これを満たさない(絶対値の和が大きい)同符号の組合せではオーバフローし得るため、全ての組合せでオーバフローしない条件にはならない。 イ: |x1|、|x2|がともに32,767未満であっても、両方が正(または両方が負)で絶対値の和が32,768以上になる組合せがあり得るため、オーバフローを完全には排除できない。 ウ: x1×x2>0はx1とx2が同符号であることを意味し、この場合はむしろ絶対値の和が範囲を超えるとオーバフローが発生し得る条件である。 エ: 符号が異なる2数を加算する場合、和の絶対値は大きい方の絶対値を超えることがなく、表現範囲(−32,768〜32,767)を超えることは原理的にないため、常にオーバフローしない。これが正解である。 💡 符号付き加算のオーバフローは『同符号同士の加算でのみ発生し得る』のが原則。異符号の加算は減算的に作用するため範囲を超えない、という直感を持っておくと速い。

出典:令和3年度 秋期 応用情報技術者試験 午前 問8 / 独立行政法人情報処理推進機構(IPA)
※Web掲載用に表記を一部変更しています。著作権はIPAに帰属します。
📱 演習アプリで解く(無料・登録不要・2,640問収録)

「コンピュータ構成要素」分野の攻略ポイント

プロセッサ・メモリ・キャッシュ・入出力・IoTデバイスが対象です。実効アクセス時間やCPI(命令あたりクロック数)の計算は毎年の定番で、公式さえ覚えれば短時間で確実に1問確保できます。

コンピュータ構成要素の攻略ポイントをすべて見る(要点6項目・ひっかけ3項目)→

同じ分野(コンピュータ構成要素)の過去問