ビット とは

ビット とは

基本情報技術者 過去問 2003年 秋期 午前 問6 を参考に考えてみます。

<問題>

最上位をパリティビットとする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で当たるんだから書いとかなきゃ損よね。

ビットとはコンピュータが扱える最小の単位です。1か0のどちらかしか存在しません。

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

<問題>

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

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

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

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

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

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

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

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

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

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

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

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

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

コメント

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