LET'S TRY
問題文
1ビット以上の1を含むビット列Xに対して,最も右側の1だけを残し,他のビットはすべて0にするアルゴリズムを考える。手順に従ったとき,手順3のaに入る論理演算はどれか。 手順1:ビット列AをXとし,符号なし2進数とみなして1を引いた値をBとする。手順2:AとBの排他的論理和をCとする。手順3:AとCのa演算をAとする。(例:00101000の場合,結果は00001000になる)
fe-siken.com
IPAの公開問題について ↗
まずは自分で考えて、理由を確かめよう。
1ビット以上の1を含むビット列Xに対して,最も右側の1だけを残し,他のビットはすべて0にするアルゴリズムを考える。手順に従ったとき,手順3のaに入る論理演算はどれか。 手順1:ビット列AをXとし,符号なし2進数とみなして1を引いた値をBとする。手順2:AとBの排他的論理和をCとする。手順3:AとCのa演算をAとする。(例:00101000の場合,結果は00001000になる)
fe-siken.com
IPAの公開問題について ↗
自分で考えてから、解説を開いてみてね。
正解は ウ です。
A=00101000の例:手順1でB=00100111,手順2でC=00001111(XOR),手順3でA AND C=00101000 AND 00001111=00001000となり最右端の1だけが残ります。論理積(AND)が正解です。
学習ノートを読み込んでいます…