修了試験 2014-01-26実施分 基本情報技術者試験 問1
次に示す手順は,列中の少なくとも一つは1であるビット列が与えられたとき,最も右にある1を残し,他のビットを全て0にするアルゴリズムである。 例えば,00101000が与えられたとき,00001000が求まる。 aに入る論理演算はどれか。 手順1 与えられたビット列Aを符号なしの2進数と見なし,Aから1を引き,結果をBとする。 手順2 AとBの排他的論理和(XOR)を求め,結果をCとする。 手順3 AとCの[ a ]を求め,結果をAとする。
正答3
解説
正解はウ。 手順1,2でC=A XOR(A-1)は,最も右の1からその下位ビットまでが反転した部分を表す。 A=00101000のときB=00100111,C=00001111となり,AとCの論理積(AND)を取ると00001000となり,最も右の1だけが残る。 XOR,NAND,ORでは他のビットが消えない。まとめて解く
修了試験 2014-01-26実施分を通しで解く(80問)→