次に示す手順は,列中の少なくとも一つは1であるビット列が与えられたとき,最も右にある1を残し,他のビットを全て0にするアルゴリズムである。例えば,00101000が与えられたとき,00001000が求まる。aに入る論理演算はどれか。 手順1 与えられたビット列Aを符号なしの2進数と見なし,Aから1を引き,結果をBとする。 手順2 AとBの排他的論理和(XOR)を求め,結果をCとする。 手順3 AとCの[a]を求め,結果をAとする。
ウ. 論理積(AND)
最も右にある1だけを残し他を0にするには、A から1を引いた B との XOR で生成したマスク C を、A と AND して最下位1ビットだけを残します。よって a に入るのは論理積(AND)でウが正解です。
基本情報技術者試験 平成30年度 秋期 午前 の過去問一覧へ戻る・問2