論理演算・ビット演算の練習問題
AND・OR・XOR・NOT、マスク処理、論理シフト、ド・モルガンの法則を、8ビットで何問でも生成する練習問題。間違えた選択肢が実際にはどの演算の結果なのかまで表示します。
AND と OR は意味を知っていても、桁をそろえて実際に計算する場面では取り違えが起きます。サブネットマスクも、設定値のフラグも、根はこの8ビットの計算です。ここが手で動くようになると、後ろの単元がまとめて軽くなります。
問(1〜50)
問題 1
結果
型別の正答率
| 問題の型 | 正解 | 正答率 |
|---|
間違えた問題
このセットのURL:
同じURLを開けば、いつでも同じ問題を解き直せます。
この練習問題の作り
- 問題は毎回その場で作られます。あらかじめ用意した問題を並べているのではないので、解き尽くすことがありません。
- 誤答は「ありがちな間違い」から作っています。ANDとORの取り違え、XORで1と1を1にしてしまう、シフトの向きと倍率の取り違え、論理シフトと算術シフトの混同、ド・モルガンでANDとORを入れ替え忘れる——といった、実際に起きるミスです。
- 間違えた選択肢が何を表すかまで出ます。「不正解」で終わらせず、自分が何を計算したのかが分かります。
- 型別の正答率が出ます。10種類の型のうち、どこで落としているかが結果画面で分かります。
出題される型
- AND(論理積)
- OR(論理和)
- XOR(排他的論理和)
- NOT(ビット反転)
- マスクパターンを選ぶ
- マスクをかけた結果
- 論理シフト(ビット列)
- シフトと倍率
- XORの性質(2回で元に戻る)
- ド・モルガンの法則
例題
実際に出題される問題の例です。ページ上のアプリでは、これと同じ形式の問題が何問でも生成されます。
例題 1XORの性質(2回で元に戻る)
8ビットの2進数 A = 10000000 に、B = 10100010 との排他的論理和(XOR)を2回続けて適用しました。得られる結果はどれですか。
- 00000000
- 01111111
- 10000000 ← 正解
- 00100010
A XOR B = 00100010、これにもう一度 B を XOR すると 10000000 となり、元の A に戻ります。同じ値を2回 XOR すると必ず元に戻る、という性質です。簡易な暗号化や、作業用の変数を使わない値の交換に使われます。
例題 2OR(論理和)
8ビットの2進数 A = 01100000、B = 00100100 のとき、A OR B(ビットごとの論理和)の結果はどれですか。
- 00100000
- 10011011
- 01000100
- 01100100 ← 正解
OR は「どちらかが1なら1、両方0のときだけ0」です。桁をそろえて上から見ていくと、 A 01100000 B 00100100 → 01100100 となり 01100100 です。
例題 3マスクをかけた結果
1バイトのデータ 16進数の D1(2進数で 11010001)に、マスクパターン 16進数の F0(2進数で 11110000)を論理積(AND)で適用しました。結果を2進数で表すとどれですか。
- 11010000 ← 正解
- 11110001
- 00101110
- 11110000
マスクが0の桁は必ず0に、1の桁は元のまま残ります。11010001 AND 11110000 = 11010000(16進数では D0)です。AND は「いらない桁を消す」、OR は「特定の桁を1にする」、XOR は「特定の桁を反転する」と役割が分かれています。
よくある質問
論理演算・ビット演算の練習問題は何問ありますか。
問題は固定ではなく、その場で生成しています。1〜50問の範囲で解きたい問題数を指定でき、何度でも新しい問題が出ます。
同じ問題をもう一度解けますか。
解けます。出題するとURLに問題セットの識別子が付きます。そのURLを開き直せば、まったく同じ問題が同じ順番で出ます。
間違えた問題だけ解き直せますか。
解き直せます。結果画面に「間違えた問題だけ解き直す」ボタンがあります。型別の正答率も表示されるので、どの型で落としているかが分かります。