本文へスキップ

技術士試験(情報工学部門)・情報技術者試験。ファーストマクロ。


Since 2016.4.19

平成30年度 秋期 基本情報技術者試験問題と解説

問2

次に示す手順は、列中の少なくとも一つは1であるビット列が与えられたとき、最も右にある1を残し、他のビットをすべて0にするアルゴリズムである。例えば、00101000が与えられたとき、00001000が求まる。a に入る論理演算はどれか。

手順1 与えられたビット列Aを符号なしの2進数と見なし、Aから1を引き、結果をBとする。
手順2 AとBの排他的論理和 (XOR) を求め、結果をCとする。
手順3 AとCの  a  を求め、結果をAとする。

ア 排他的論理和 (XOR)

イ 否定論理積 (NAND)

ウ 論理積 (AND)

エ 論理和 (OR)


正解


解説

【手順1】
00101000−1 = 00100111
これが結果Bである。

【手順2】
00101000 XOR 00100111 00001111
これが結果Cである。

00101000 と00001111の演算が 00001000 であるというとは、
1、2、4桁目:で0
3桁目:で0
5桁目:で1
6、7、8桁目:で0
これらの結果が得られるのは 論理積 (AND) である。

問1 目次 問3