谷の奥から、不気味な気配が漂ってきた。
「…グルルル…」
低く響く唸り声とともに、暗闇の中から数字で構成されたゴブリンがゆっくりと姿を現した。
その体は「1」と「0」の数字が絡み合うように刻まれ、手には不気味な光を放つ杖を握っている。
ゴブリンはゆっくりと顔を上げ、シンジたちを鋭い目で睨みつけた。
「負の数の扱いを知らなければ…この谷を通ることはできない…!」
ゴブリンの声が響き渡り、谷全体の空気がピリッと引き締まる。
「負の数?普通にマイナスを付けるだけじゃダメなのか?」シンジは戸惑いながらマナに視線を向けた。
「それがね、コンピュータは0と1しか使えないから、マイナスという概念をそのまま扱うことができないんだよ。」マナは冷静に説明しながら、杖を掲げた。「だから、負の数を表現する方法がいくつか考えられたの!」






🔢 絶対値表現 – 最も単純な方法
マナが杖を振ると、空中に4ビットの数値が光り輝く。

例えば、4ビットで『5』と『-5』を表すとすると、こうなるの。
+5: 0101
-5: 1101
+5: 0101
-5: 1101

この方法だと、一番左の符号ビットを0にすると正の数、1にすると負の数になるの。

へぇ、じゃあ簡単じゃん!
シンジは納得したように頷いたが、マナは首を横に振った。

でも、この方法だと足し算や引き算がうまくいかないことが多いんだよ。例えば、5と-5を足しても、計算がうまくいかなくなるの。

なんだよ、それじゃあ使えないじゃん!
シンジは眉をひそめる。
🔄 1の補数 – ビットを反転して負を作る方法
マナは空中に新たな数字を映し出した。

次に考えられたのが『1の補数』!

これは、すべてのビットを反転させることで負の数を表現するの。
+5: 0101
-5(1の補数): 1010
+5: 0101
-5(1の補数): 1010

つまり、0を1に、1を0にするだけで負の数が作れるんだね!
シンジは頷いたが、マナはさらに続けた。

でもね、この方法だと『0』が2種類存在してしまうのが問題なの。
マナの杖が示した光に「+0」と「-0」の2つの数値が浮かび上がる。
+0: 0000
-0(1の補数): 1111
+0: 0000
-0(1の補数): 1111

0が2つあるのは…なんか気持ち悪いな。
シンジは首をかしげた。
✅ 2の補数 – 現在使われている方法!

だから、今では『2の補数』が使われているの!
マナの杖が輝くと、空中に計算の流れが浮かび上がった。

2の補数は、1の補数に『1』を足すだけで負の数を表現できるんだ。
+5: 0101
1の補数(ビット反転): 1010
+1 を加える: 1011
+5: 0101
1の補数(ビット反転): 1010
+1 を加える: 1011

2の補数は、1の補数に『1』を足すだけで負の数を表現できるんだ。

これで-5を表現できるし、『0』は1種類しかないんだ。

なるほど!これなら便利だな!
シンジは目を輝かせた。
💥 補数ゴブリンとの戦い
補数ゴブリンは不敵な笑みを浮かべると、杖を振り下ろし、宙に問題を浮かび上がらせた。

「負の数の計算がわかったなら、これを解いてみろ…!4ビットの範囲で、+3と-3を足してみろ!」
⚔ シンジの挑戦: +3と-3の計算
「えっ、どうやるんだ…?」シンジは焦りながらも、マナの方を見やる。
「大丈夫。私が一緒にやるから!」マナが優しく声をかけ、計算の流れを示した。
① +3の2進数表現
+3(2進数): 0011
+3(2進数): 0011
② -3の2の補数を求める
3のビット反転: 1100
+1 を加える: 1101
3のビット反転: 1100
+1 を加える: 1101
③ 足し算をする!
0011
+ 1101
------------
10000
0011
+ 1101
————
10000
「4ビットだから、一番左の桁あふれ(キャリー)は無視して…結果は『0000』、つまり『0』になるよ!」
マナの説明を聞きながら、シンジは数値を確認する。
「おお、やった!負の数の計算がわかってきた気がする!」
その瞬間、補数ゴブリンが悔しそうに唸り、杖を握る手を震わせた。
「ふん…なかなかやるではないか…だが、お前たちにこの試練を突破させるわけにはいかぬ!」
ゴブリンが杖を振ると、闇の中から新たな影が蠢き出した――もう一体の補数ゴブリンだ!

💥 シンジ、一人で試練に挑む!
「な…!?」シンジが身構える間もなく、新たな補数ゴブリンがマナの背後に回り込み、素早く杖を振った。
「マナ、後ろ――!」
バチッ!
突如として、紫色の電撃がマナの体を貫いた。
「くっ…何…?」マナの体が硬直し、膝をつく。「しまった…魔力が…使えない…!」
「マナ!」シンジが駆け寄ろうとしたが、補数ゴブリンが目の前に立ちはだかる。
「魔法使いを封じてやった…これで貴様は一人だ。さぁ、次の問題を解けなければ、この娘の麻痺は解けないぞ!」

「卑怯な手を…!」シンジは拳を握りしめ、ゴブリンを睨みつけた。
だが、やるしかない。マナを助けるためには、目の前の問題を解くしかない!
⚡ 最終試練: -7と+5の足し算
問題: 「4ビットの範囲で、-7と+5を足せ!」
「お前に解けるか?」ゴブリンは不気味に笑いながら、シンジの答えを待つ。
「やるしかねぇ…!」シンジは拳を握り、冷静に計算を始めた。
解答
1110
① -7の2の補数を求める
+7(2進数): 0111
7のビット反転: 1000
+1 を加える: 1001
+7(2進数): 0111
7のビット反転: 1000
+1 を加える: 1001
② +5の2進数表現
+5(2進数): 0101
+5(2進数): 0101
③ 足し算をする!
1001
+ 0101
------------
1110
1001
+ 0101
————
1110
「…1110!」
シンジが叫ぶと、補数ゴブリンの体が激しく揺れた。
「な…貴様、なぜ負の数の計算ができる…!」
「こんなもん、さっきの試練と同じだ!お前の謎かけなんかに負けるか!」

光がゴブリンを包み込み、消滅の兆しが見え始める。そして――
✨ 麻痺解除!ゴブリンの退却!
「うっ…!」マナの体が軽くなり、手足が動くようになった。
「マナ、大丈夫か!?」
「ええ…シンジが試練を突破したおかげで、魔法が戻ったみたい!」マナは微笑みながら立ち上がると、杖を振ってゴブリンを払いのける。
「バカな…こんな小僧に…負の数を理解されたというのか…!」
補数ゴブリンの体は霧のように薄れ、最後に「ぐぬぬ…次こそは…」という悔しげな声を残して、完全に消滅した。
🔥 勝利!シンジの成長!
シンジは大きく息を吐いた。「ふぅ…なんとかなった…!」
マナはそんなシンジを誇らしげに見つめ、「おめでとう、シンジ!負の数の計算をマスターしたね!」と笑顔で言った。
シンジは『2の補数計算』のスキルを習得した!
「これで、どんな数が来ても怖くないぜ!」シンジは拳を握りしめ、自信に満ちた表情を浮かべた。
「この知識は、これからの試練でも絶対に役立つよ!」マナが頷く。
「よし、次の冒険に進もう!」
谷の先には、さらなる試練が待っている。しかし、シンジはすでにその目に迷いはなかった。
最初に考えられたのが『絶対値表現』よ。