令和元年度 高度共通 午前I(PM試験) 問1

分野:基礎理論(2進数・論理・集合・確率統計・情報理論・AI/機械学習の理論・オートマトン・形式言語・計算量)|実際に出題されたIPA過去問題

0以上255以下の整数nに対して,next(n)=n+1(0≦n<255),next(n)=0(n=255)と定義する。next(n)と等しい式はどれか。ここで,x AND y及びx OR yは,それぞれxとyを2進数表現にして,桁ごとの論理積及び論理和をとったものとする。

問題の図表(IPA公式問題冊子より引用)
図表:IPA公式問題冊子より
  1.  (n+1) AND 255
  2.  (n+1) AND 256
  3.  (n+1) OR 255
  4.  (n+1) OR 256
解答・解説を見る

正解:ア

AI解説

255は2進数で11111111(8ビットすべて1)である。(n+1) AND 255は、n+1の下位8ビットだけを取り出すマスク演算になる。0≦n<255ではn+1は255以下なのでそのままn+1となり、n=255のときはn+1=256=100000000(2進)でAND 255の結果は0となる。これはnext(n)の定義(255の次は0に戻る)と完全に一致する。 ア: 正解。AND 255は下位8ビットのマスクとなり、256だけが0に丸められるため、next(n)と等しい。 イ: (n+1) AND 256は、n+1の第9ビット目だけを残す演算で、結果は0か256にしかならず不適切。 ウ: (n+1) OR 255は、下位8ビットをすべて1にするため結果は常に255(又は255超)となり不適切。 エ: (n+1) OR 256は、常に第9ビットが1になり結果が256以上となるため不適切。 💡 2^k-1(255,1023など)とのANDは「下位kビットの取り出し=2^kによる剰余」と同じ働きをする。カウンタのラップアラウンド(一周して0に戻る)処理の定石として覚えておく。

出典:令和元年度 秋期 プロジェクトマネージャ試験 午前I 問1 / 独立行政法人情報処理推進機構(IPA)
※Web掲載用に表記を一部変更しています。図表はIPA公式問題冊子から引用しています。著作権はIPAに帰属します。
📱 演習アプリで解く(無料・登録不要・904問収録)

「基礎理論」分野の攻略ポイント

2進数・論理演算・集合・確率統計・情報理論・AI/機械学習の理論・オートマトン・形式言語・計算量が範囲です。純粋な計算問題が多く、対策の有無がそのまま得点差になります。手を動かす練習が最も効く分野です。

基礎理論の攻略ポイントをすべて見る(要点6項目・ひっかけ3項目)→

同じ分野(基礎理論(2進数・論理・集合・確率統計・情報理論・AI/機械学習の理論・オートマトン・形式言語・計算量))の過去問