離散数学 (全108問中30問目)

No.30

最上位をパリティビットとする8ビット符号において,パリティビット以外の下位7ビットを得るためのビット演算はどれか。
  • 16進数0FとのANDをとる。
  • 16進数0FとのORをとる。
  • 16進数7FとのANDをとる。
  • 16進数FFとのXOR(排他的論理和)をとる。
  • [出題歴]
  • 基本情報技術者 H15秋期 問6
  • 基本情報技術者 H18春期 問6
  • 基本情報技術者 H31春期 問2

分類

テクノロジ系 » 基礎理論 » 離散数学

正解

解説

論理演算を利用したビット操作には、論理積(AND)を用いて特定位置のビットを取り出す操作と、排他的論理和(XOR)を用いて特定位置のビットを反転させる操作があります。

論理積(AND)演算の真理値表は次のようになっています。
02.gif/image-size:155×126
あるビットと1の論理積演算は、被演算ビットが0であれば結果が0、1であれば結果が1になるので被演算ビットがそのまま結果に反映されるという特徴をもっています。

この問題では8ビットのデータの下位7ビットを取り出したいので、最上位ビット以外を「1」としたビット列「0111 1111」との論理積をとることで下位7ビットを取り出せます。

2進数「0111 1111」を16進数で表すと「7F」なので正解は「ウ」となります。
© 2010-2024 基本情報技術者試験ドットコム All Rights Reserved.

Pagetop