カコモンノート

問1応用情報技術者 平成31年度 春期

1 / 80問
平成31年度 春期2019年

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進数表現にして,桁ごとの論理積及び論理和をとったものとする。

選択肢をえらぶと、答えと解説が出ます

選択肢をえらぶと、
ここに答えと解説が出ます
正答 1

解説

正解は1。255は2進数で11111111(下位8ビットがすべて1)なので、255とのANDは下位8ビットだけを残す。0≦n<255ならn+1は1〜255で8ビットに収まり、ANDをとってもn+1のまま。n=255のときはn+1=256=100000000(2進)で、下位8ビットは00000000だから結果は0になる。どちらの場合もnext(n)と一致する。

  • 2は、256=100000000(2進)とのANDで第9ビットだけが残る。n=0ならn+1=1で結果は0となり、1にならない。
  • 3は、255とのORで下位8ビットがすべて1になり、n<255では常に255になる。
  • 4は、256とのORで第9ビットが立つので、n=0なら1+256=257となり、0〜255に収まらない。

根拠:ビット演算の性質(下位ビットが1の値とのANDは下位ビットの取り出し、ORはビットを立てる)。

KEY POINT
2のn乗−1(255など)とのANDは下位nビットの取り出しで、2のn乗で割った余りと同じ働きをする。
出典:平成31年度 春期 応用情報技術者試験 午前 問1(独立行政法人 情報処理推進機構(IPA))
独立行政法人情報処理推進機構(IPA)が公表している過去問題です。IPA の「過去問題の使用について」に基づき、IPA が指定する形で出典を明記して掲載しています(利用の許諾申請は不要)。問題文・選択肢の内容は変えていません。元の問題冊子から文字を起こす都合で、改行・字間の空白は省き、英数字の全角・半角は元とそろえていない箇所があります。図表は IPA が公表した問題冊子のものです。解説は当サイトが独自に作成したもので、IPA とは関係ありません。