メインコンテンツへ
基礎理論数値表現・計算

グレイコードの特徴として最も適切なものはどれか。

ア.各コードの1ビット数が常に奇数になる
イ.隣接するコード間で変化するビットが必ず1ビットだけである正解
ウ.10進数への変換が2進数より高速に行える
エ.エラー訂正符号の一種であり、1ビット誤りを自動訂正できる

解説

グレイコードは「ゆっくり確実に一歩ずつ階段を上るお年寄り」みたいなもの。普通の2進数は7→8のとき0111→1000と4ビット同時に変わる(危険!瞬間的に変な値が出る)。グレイコードは常に1ビットしか変えない。階段を一段ずつ踏み外さず上るから、ロータリーエンコーダのような機械部品に最適!

なぜ イ が正解か

グレイコードの本質的特徴:隣接する2つのコード間でハミング距離が常に1(変化ビットが1つだけ)。例:0→1→2→3のグレイコードは 000→001→011→010 で各ステップで1ビットのみ変化。これにより中間状態での誤読を防げる。特にロータリーエンコーダや電子回路で活用。

なぜ ア は間違いか

1ビット数(ハミング重み)が奇数になる保証はグレイコードの定義にない。これはパリティビットの特徴に近い誤解。

なぜ ウ は間違いか

10進数への変換速度は2進数と比べて特に有利ではなく、むしろグレイコード→2進数変換は追加手順が必要。変換速度を特徴とする符号ではない。

なぜ エ は間違いか

グレイコードはエラー訂正符号ではない。1ビット誤りを自動訂正できるのはハミング符号の特徴。グレイコードの目的はノイズ耐性(誤読防止)であり誤り訂正ではない。

出典: AI生成問題(学習用)