ITパスポート 平成30年度秋期午前問79

午前問79

8ビットの2進データ X と 00001111 について、ビットごとの論理積をとった結果はどれか。ここでデータの左方を上位、右方を下位とする。
下位4ビットが全て0になり、Xの上位4ビットがそのまま残る。
下位4ビットが全て1になり、Xの上位4ビットがそのまま残る。
上位4ビットが全て0になり、Xの下位4ビットがそのまま残る。
上位4ビットが全て1になり、Xの下位4ビットがそのまま残る。
『情報処理過去問.com』からiPhoneアプリがリリースされました!!

正解

解説

8ビットのデータXと00001111でビットごとの論理積(AND)を行うと、マスク側が0の位置は必ず0になり、1の位置は元のビットがそのまま残ります。00001111は左側4ビットが0、右側4ビットが1なので、結果は上位4ビットがすべて0になり、下位4ビットにXのビット列がそのまま残ります。例えばXを"10101010"や"11001100"と仮定してANDをとっても、同じ性質が確認できます。したがって正解はウです。
ア.下位4ビットが全て0になり、Xの上位4ビットがそのまま残る。
下位4ビットが0になるのは11110000のようなマスクとANDをとった場合です。00001111では下位が1なので、下位は残り、上位が0になります。誤りです。
イ.下位4ビットが全て1になり、Xの上位4ビットがそのまま残る。
AND演算でビットを1に固定することはできません。マスクが1でも、対応するXが0なら結果は0です。下位4ビットがすべて1になるとは限らないため誤りです。
ウ.上位4ビットが全て0になり、Xの下位4ビットがそのまま残る。
マスク00001111は上位が0、下位が1なので、上位4ビットは0に、下位4ビットはXの値がそのまま残ります。正しい記述です。
エ.上位4ビットが全て1になり、Xの下位4ビットがそのまま残る。
ANDでマスク側が0の位置を1にすることはできません。上位4ビットをすべて1にすることは不可能です。誤りです。
スポンサーリンク







シェアする

  • このエントリーをはてなブックマークに追加

フォローする