電卓作り
僕はアリシアから教えてもらった魔法細工の内部構造を元に、とりあえず少ない桁の計算をする構造について提案する。
アリシアは「そこに命がないもの」を魔法で加工して、魔力が流れる回路のようなものを作ることができる。
これを使って、アリシアは様々な便利アイテムを作って売っていた。
加工されたあともは見た目は変わらない。材料はなんでもいいけど、やりたいことによって向き不向きというものはあるようだ。
「アリシアの魔術加工の力は世界一だ。僕はそう思う」
「そんなことないよ……。私にはこれくらいしかできることがないだけで」
僕もアリシアも、魔力にはあまり優れない。僕の両親のように、派手な稲妻や火炎で敵を攻撃することなんてできやしない。
この世界で尊ばれるのは、魔術の火力が高く、制御力もまあまあ高くて暴発しにくい人間だ。そういう人間が、国からも有り難がられ、偉くなれるし金も稼げる。
火力も制御力も低い僕はもちろん、火力が低くて制御力だけぶち抜けてるアリシアも、この世界では良い扱いを受けているとは言い難い。以前も語ったように、辺境の村だと、扱いが悪いどころか差別される立場だ。
だけどこのアリシアの魔力こそが、僕のやりたいことの鍵となる。
「アリシアには、たくさんの『NAND回路』を作ってもらいたい」
僕は言った。
NAND回路とは、回路のなかでもっとも基礎的であり、そして万能な存在だ。
0と書かれたボールと、1と書かれたボールがそれぞれいくつかあるとする。
それら2つ入れると、0と書かれたボールか、1と書かれたボールが出てくるマシンがあるとしよう。
NAND回路とは『両方1のボールだった場合だけ0のボール、それ以外は1のボール』を出してくるマシンだ。
今回はボールで例えたけど、コンピューターはこれをミクロの世界でやっている。
「今からそれを、魔力の流れという形でアリシアに作ってもらいたい」
NAND回路をたくさん作って繋げて循環させることができれば、コンピューターを作ることができるんだ。
僕のもといた世界では、それはもっぱら金属で作られてたけど、あくまであの世界ではそれが最も都合がいいからでしかない。
わざわざ半導体を作る必要はない。材料はなんだっていいんだ。
「う、うーん?」
アリシアは首をかしげる。
「とにかく、このNAND回路は作れるよね」
要するに、両方の入り口から魔力が入ったときだけ魔力が出てこない。それ以外の場合は魔力が流れるようにしてくれればいい。
「それならなんとか……」
「あとはそれらを、僕の図面の通りに繋げてくれればい」
「よくわかんないけど、やってみるね」
アリシアが図面を元に、材木や石、宝石みたいなものやモンスターの骨まで集めてきた。
一つその手に握られるごとに、アリシアの魔法でぱっと輝いて、次々と小さな木箱の中に詰め込まれていく。
数字の表示はデジタル表記だ。元々、この世界の数字はアラビア数字(僕の元いた世界の一般的な数字。1、2、3,4ってやつ。他には漢数字一、二、三、四や、ローマ数字Ⅰ、Ⅱ、Ⅲ、Ⅳなんかが挙げられる)とよく似ている。この際、電卓と共にアラビア数字を広めてしまえばいいと僕は思った。
コンピューターのなかでは、数字は二進数だ。01001001といった、0と1の数字で表されてる。いつも僕らが使ってる数字は十進数といって十でくり上がるけど、二進数では二でくりあがる。
僕の作った構造のなかでは、この0と1を何度もNAND回路にぶちこみ続け、二進数での計算を行うようにしている。僕の元いた世界のコンピューターも、計算効率や構造などは違っても、基本は同じだ。
アリシアから時折質問を受けながら、どれくらい待っただろうか。アリシアは椅子から立ち上がって「ふーっ!」と汗をぬぐった。
「これで仕上げっ」
木箱に手を乗せると、青白い光が放たれた。いつもアリシアが最後に使う魔法だ。詳細はよく知らない。
「とりあえず、できたよ」
アリシアはその蓋を閉められた木箱を掲げる。
「ありがとう。ほんと、感謝するよ」
「疲れたぁ。私、こんなに細かいもの作ったことないから」
それについてはほんと頭があがらない。
「ほんとにこんなので計算ができるの?」
「できる。僕と君がミスをしてなければね」
だけど、ケアレスミス等がないように、僕もアリシアも細心の注意を払ってきたはずだ。
スイッチと0~9の数字と+-=を入力するボタン、そして表示板しかない簡素な電卓。だけど、うまくいっていれば、これが僕の電脳革命の第一歩になるんだ。
とりあえず、僕は簡単な計算をいくつか打ち込んでみる。
『26+45=』
『71』
『123-26=』
『97』
『-12+19=』
『7』
「やった! やったね! ミロ!」
アリシアは声をあげ、大喜びで僕と両手でハイタッチ。その様はまるで昼間の太陽のようで、僕はプロトタイプが完成したことよりも、そちらに歓喜しそうになる。
こうして、僕らのコンピューター作成の第一歩は、わりと順調に進んだのでした。
次の日。いつものごとくアリシアの工房にて。
「今日は掛け算の機能を足そうと思う」
僕は言った。
例えば、同じ商品12個の値段を計算したいとする。そのとき、12回足し算を入力してたら大変だし、なにより打ち間違いも増える。
整数の足し算引き算掛け算。これさえ揃えば、ひとまず商人向けの便利アイテムくらいにはなる。最初の製品としては上々だ。
十進数で10をかけるときは、桁をひとつあげて一の位に0と書く。これと同じで、二進数では2をかけるときは桁をあげて一の位に0と書くんだ。
3をかけるときは、2倍の操作をしたあとに、元の数を足せばいい。
あとは昨日の足し算引き算と同じ。NAND回路の組み合わせで作れる。
僕は昨夜から考え続けた図面をアリシアに見せた。昨日よりも大分ややこしい。
彼女がそれにあわせて木箱のなかに構築していく。
最後に仕上げ。蒼い光が瞬いて、第二型電卓は完成した。
今度は0~9と+と-、それに加えて×が加わっている。僕は検算を行った。
『12×9=』
『108』
『25×124=』
『3100』
問題なさそうだ。
「やったよミロ!」
恒例行事。もろ手を挙げてのハイタッチ。ばちんと小気味いい音が工房に響いた。
ここまでは順調。あとはアリシアの負担を軽くする構造を考えて、いくつも電卓を作ること。最初はどうせ安く売るしかないので、数を稼がなきゃいけない。
とにもともかく、電脳ウィザードたちの最初の製品は、今ここに完成したのでした。
「面白い!」
「続き気になる」
「応援してます!」
そう思ってくださる方は、ぜひ感想投稿やブックマーク登録お願いします!