論理積 とは

2019

論理積 とは

基本情報技術者 過去問 2019年(平成31年) 春期 午前 問2 を参考に考えてみます。

<問題>

最上位をパリティビットとする8ビット符号において,パリティビット以外の下位7ビットを得るためのビット演算はどれか。

(ア)  16進数0FとのANDをとる。

(イ)  16進数0FとのORをとる。

(ウ)   16進数7FとのANDをとる。

(エ)   16進数FFとのXOR(排他的論理和)をとる。

最上位をパリティビットとする8ビット符号において,パリティビット以外の下位7ビットを得るためのビット演算はどれか。

ここから私の思考です↓

ちなみに青字は文章を読んだ際の私の頭の中です。

<問題>

最上位をパリティビットとする8ビット符号において,パリティビット以外の下位7ビットを得るためのビット演算はどれか。

はい、わからん。はい、終了。

(ア)  16進数0FとのANDをとる。

(イ)  16進数0FとのORをとる。

(ウ)   16進数7FとのANDをとる。

(エ)   16進数FFとのXOR(排他的論理和)をとる。

勘で!正解は(ウ)でいいわ!

正解は(ウ)です。

ラッキー当たった!勘でも4分の1で当たるんだから書いとかなきゃ損よね。

論理積とは、どっちかが0なら0、どっちも1なら1をくれます。

ここからは私の思考のおかしかった部分です↓

<問題>

最上位をパリティビットとする8ビット符号において,パリティビット以外の下位7ビットを得るためのビット演算はどれか。

まず、パリティビットって何?

パリティビットの説明

ふむ。ビットは1か0しかないから、奇数か偶数かになるように調節するための記号ってことね?

記号ってことで1ケタ使うから残りの7ケタを「得る」ためのビット演算と。

得るっていう表現がなんかしっくりこない。

この問題では8ビット符号のうち下位7ビットを取り出したいので、最上位ビットを0、下位7ビットを”1″としたビット列「0111 1111」を用意し、8ビット符号との論理積をとることで下位7ビットだけを取り出せます。

うん。わかんない。論理積ってなんだっけ?

論理積の説明

両方が1なら1を、どちらかが0なら0をとると。ほしいところだけを1にしておくと。

こういうのは問題のパターンとして覚えておく方がよいかな。

「得る」場合は論理積、欲しい部分に1をあてる。

「得る」場合は論理積、欲しい部分に1をあてる。

大事な部分なので2回言いました。

また1つ賢くなりました。よかったよかった。

コメント

  1. […] […]

  2. […] 次の問題 […]

  3. […] 前の問題 一覧へ 次の問題 気分転換 […]

タイトルとURLをコピーしました