ITパスポート試験 ITパスポート 2018年 (平成30年 秋期)79: 8ビットの2進データXと00001111について,ビットごとの論理積をとった結果はどれか。ここでデータの左方を上位,右方を下位とする。

ITパスポート 2018年 (平成30年 秋期)
Q 7979 / 100
8ビットの2進データXと00001111について,ビットごとの論理積をとった結果はどれか。ここでデータの左方を上位,右方を下位とする。
この問の正解率:54.74%(749件)

解説

ITパスポート 2018年 (平成30年 秋期) 問79「8ビットの2進データXと00001111について,ビットごとの論理積をとった結果…」の正解と解説です。ITパスポート試験の「テクノロジ系」分野の過去問で、これまでの受験者の正答率は約55%です。

正解

. 上位4ビットが全て0になり,Xの下位4ビットがそのまま残る。

正答率 54.7%(749人中 410人が正解)

問題の解説

AND(論理積)のビットマスク演算の原理:マスクが0の部分は元データに関わらず強制的に0、マスクが1の部分は元データの値がそのまま保持される。マスク値00001111は上位4ビットが0000(強制ゼロ化)・下位4ビットが1111(元データ保持)。したがってX AND 00001111の結果は上位4ビットが全て0、下位4ビットはXの元の値が保持される。この性質を利用して特定のビット範囲を取り出す「ビットマスク(抽出)」操作は、フラグ管理・IPアドレスのネットワーク部抽出等に広く使われる。

選択肢ごとの解説

  • 誤り。マスク00001111の上位4ビットは0なので、AND演算で上位4ビットは全て0になる(Xの上位ビットが残るという説明は誤り)。0 AND X=0というAND演算の基本性質により、マスクが0の部分の演算結果は元データの値に関わらず必ず0になる。
  • 誤り。AND演算でマスクが1の部分の結果は元データの値(0または1)がそのまま保持されるため「全て1になる」わけではない。1 AND 0=0、1 AND 1=1というAND演算の性質により、下位4ビットはXの元の値がそのまま反映される。全て1になるのはORマスクでマスクが1の場合。
  • 正解。AND演算ではマスク0の部分が強制ゼロ化(上位4ビット→全て0)・マスク1の部分が元データ保持(下位4ビット→Xの値をそのまま反映)となる。マスク00001111を使ったAND演算は下位4ビットの値を抽出し上位4ビットをゼロクリアするビット操作として活用される。
  • 誤り。マスクの上位が0000なのでAND演算で上位4ビットは強制的に0になり全て1になることはない。マスクが0の部分が1になる演算はANDではなく0 OR X=X(ORでマスクが0の部分)の場合の話であり、ANDとORの演算特性を混同した誤りとなる。

ITパスポート 2018年 (平成30年 秋期) の過去問一覧に戻る・問79

ITパスポート試験 の iOS アプリ版

アプリ版なら、よりスムーズに動作し、
スワイプで問題遷移ができます。

ITパスポート試験 合格.dev を App Store でダウンロード