【基本情報技術者試験】2進数が苦手でも大丈夫。数字が無理なら「物語」で覚える!

基本情報技術者試験

※当サイトはアフィリエイト広告を利用しています。商品を紹介し、収益を得ることがあります。

基本情報技術者試験の勉強を始めると、真っ先に立ちはだかるのが 2進数(バイナリ) です。 参考書を開くと、たいていこう書いてあります。

  • 10進数を2進数にするなら: 「2で割り続けて、余りを下から読む」
  • 2進数を10進数にするなら: 「各ケタに重みを掛けて、全部足す」

理屈はわかります。でも、正直なところ僕はこう思っていました。 「……やり方はわかった。でも、全然ピンとこない!」

そこで、数字として覚えるのをあきらめた僕が、「物語」を想像することで2進数と仲良くなれた方法をご紹介します。

そもそも、2進数ってなんだっけ?

まずは基本をサッとおさらいしましょう。

  • 10進数: 私たちが普段使っている数え方。0〜9を使い、10で桁が上がります。
  • 2進数: コンピュータが使う数え方。0と1だけで表します。

2進数の世界は、右から左へ行くほど、桁の価値が 2倍、2倍…… と増えていきます。 右から順に、こんな「数字の席」が決まっているイメージです。 【 …… 32 / 16 / 8 / 4 / 2 / 1 】

たとえば、2進数の 11010 を10進数に戻すときは、「1がある場所の数字を足す」 だけでOKです。 16 + 8 + 2 = 26 という感じですね。

数字が無機質すぎて、脳が拒否してしまう……

「仕組みはわかった。でも、いざテストで数字が並ぶと頭が真っ白になる」 そんなことはありませんか? 僕はそうでした。

  • 11010
  • 101001
  • 101010

こんなふうに 0 と 1 が並ぶと、急に脳が「これは暗号だ!」とシャットダウンしてしまうんです。計算ミスも増えるし、やる気もなくなりますよね。

そこで、僕は2進数を「人間の言葉」に置き換えることにしました。

「二進国(にしんこく)」の物語で理解する

2進数の世界を、こんな物語に置き換えてみてください。

舞台:二進国

あなたは旅人です。不思議な「二進国」に迷い込みました。 この国のルールはたった2つです。

  1. 使える数字は 0 と 1 だけ
  2. 兵士たちが横一列に座っている。イスには右から順に 「パワー」 が決まっている。 (右から 1、2、4、8、16、32…… と2倍ずつ強くなる)

ルール:1なら「いる」、0なら「空席」

  • 1 → 兵士が座っている!(パワーが加算される)
  • 0 → イスは空っぽ。(パワーはゼロ)

物語①:【2進数 → 10進数】は「兵士の合計パワー」を出すだけ

門番に「お前のコードは 11010 だ。合計パワーを言え!」と言われたら、座席表を見ます。

  • 16の席:1(いる!)
  • 8の席:1(いる!)
  • 4の席:0(空席)
  • 2の席:1(いる!)
  • 1の席:0(空席)

「えーっと、16 + 8 + 2 だから…… 26だ!」 数字を変換するというより、「座席表を見て、座っている人のパワーを合計する」 だけ。これならイメージが湧きませんか?

物語②:【10進数 → 2進数】は「必要な兵士をスカウトする」だけ

逆に、10進数を2進数にするときはこう考えます。 「目標のパワーになるように、兵士をスカウトしてこよう!」

たとえば「合計パワーを 45 にせよ」と言われたら? 大きいイスに座る兵士から順に、スカウトできるか考えます。

  • 32の兵士:スカウトする!(残り 13)
  • 16の兵士:いらない(13を超えちゃうから)
  • 8の兵士:スカウトする!(残り 5)
  • 4の兵士:スカウトする!(残り 1)
  • 2の兵士:いらない(1を超えちゃうから)
  • 1の兵士:スカウトする!(ピッタリ!)

スカウトした人を「1」、しなかった人を「0」で並べると…… 101101 これが 45 の2進数です!

物語③:「割り算」の正体は、軍隊の分裂シーン!

教科書によく載っている「2で割り続けて余りを出す」という計算。 「なんで割るの?」「なんで下から読むの?」と混乱しがちですが、あれは実は…… 「兵士たちを2人組の部隊に分けていく、軍隊の分裂シーン」 なんです。

例として、13人の兵士を2進数にしてみましょう。

ステップ1:2人組をどんどん作る

司令官が叫びます。「2人1組の部隊を作れ!」

  1. 13人いるとき:
    • 6組のペアができて、1人余る
  2. その6人でまたペアを作る:
    • 3組のペアができて、0人余る
  3. その3人でまたペアを作る:
    • 1組のペアができて、1人余る
  4. 最後の1人でペアを作る:
    • 0組(ペアになれない!)けど、1人余る

ステップ2:合言葉は「下から順に!」

ここで出た「余った人数」を上から並べると「1、0、1、1」になります。 でも、二進国のルールでは 「最後に見つかった余りこそが、一番位の高いリーダーだ!」 という決まりがあります。

だから、下から順に読みます。 ✅ 1101

これで、10進数の「13」は、2進数の「1101」だとわかりました。 「ただの割り算」と思うと退屈ですが、「2人組になれなかった寂しい1人を探していく作業」だと思うと、ちょっと覚えやすくなりませんか?

3つの物語で苦手な2進数を克服しよう

「2進数がどうしても頭に入らない……」と思ったら、複雑な理屈はいったん忘れてください。 二進国の世界にあるのは、この3つの物語だけです

✅ 2進数 → 10進数

「席に座ってる兵士のパワーだけ足す」。 2進数は「誰が座っているか」を示した座席表です。 右から順に決まっているパワー(1, 2, 4, 8…)を見て、席にいる兵士のパワーを合計するだけで、10進数に早変わりします。

✅ 10進数 → 2進数

「必要な兵士をスカウトして席に座らせる」。 目標の数(10進数)にピッタリ届くように、大きいパワーの兵士から順に「お前、うちに来い!」とスカウトして席を埋めていく感覚です。選んだ席は「1」、空席は「0」にするだけです。

✅ 割り算でやるやつ

「軍隊を2人組に分けたときに余る兵士」。 教科書通りの計算をするなら、「軍隊の分裂シーン」をイメージしましょう。 ひたすら2人組のペアを作っていき、ペアになれず寂しく余った兵士を、最後の1人から順に下から拾い上げれば、それが答えになります。


この物語を知っていれば、2進数はもう「暗号」ではなく、ただの「席替えとスカウトのルール」に見えてくるはずです。

おわりに:2進数は「暗号」じゃない

2進数でつまずくのは、才能がないからではありません。 「数字を数字のまま、無理やり飲み込もうとしているから」 かもしれません。

一度、この「座席表と兵士」の物語を思い出してみてください。 すると、あんなに冷たく見えた 0 と 1 の並びが、「誰が座っているかを示す地図」 に見えてくるはずです。

もし「やっぱり頭に入らない!」と思ったら、いつでもこの物語に立ち返ってみてくださいね。

🎁練習問題

あなたは二進国の大きな門の前に立っています。 門番が、キラリと光る木札をあなたに見せました。

門番:「この通行証(11010)を読み解け! 合計パワーはいくつだ……?」

【ヒントと答え】(テキスト反転しています)

座席表を右から思い出してみましょう……。

  • 16 の席:兵士がいる!(1
  • 8 の席 :兵士がいる!(1
  • 4 の席 :空席だ…… (0
  • 2 の席 :兵士がいる!(1
  • 1 の席 :空席だ…… (0

さあ、「いる兵士(1)」のパワーだけを合計すると、答えはいくつになるでしょうか?

答えは 26

コメント