Novels

先祖返りの町作り ~無限の寿命と新文明~

第30話 電卓の開発

 それから私は自室で一人、もっといい魔道具のアイデアはないかと考えをめぐらせていた。

(魔法式と言えばプログラミング言語。プログラミング言語と言えばコンピューター。コンピューターと言えば計算。計算と言えば電卓)

 つらつらと、そんな連想ゲームをしていて気が付いた。

「『電卓』が作れませんかね?」

 思わず、独り言がこぼれ落ちる。

 魔法式には当たり前のように算術演算子がある。高度に発達した古代魔法文明の発明品であるため、もしかすると、平方根や対数のような演算子もあるのかもしれないが、そんなコマンドは誰も知らない。

 伝わっているのは四則演算子や代入演算子等、ごく基本的なものだけである。

 それでも四則演算ができるので、電卓ぐらいなら作れるはずだ。

 大学の一般教養で習ったはずのマクローリン展開の公式を覚えていれば、四則演算だけで三角関数等も実現できたが、残念ながら忘れてしまっている。

 よって、関数電卓は無理だが、一般の電卓であればなんとかなりそうだ。

 ボタンが押されたかどうかを判別する魔法式はすでに知られている。具体的には、火の魔道具を参考にすればいい。

 火の魔道具は箱のような形をしていて、その上部から火球の魔法が出る仕組みになっている。側面に配置されたボタンで、ある程度の火力調整ができるすぐれものだ。

 この魔道具は比較的多くの魔力を必要とし、また、ボタンがあるため配線のための銀線も必然的に多くなり、かなりの高額商品だ。

 これらの事から、ボタンを使って入力し、計算するところまでは問題ないだろう。

 最大の問題となってくるのが、ディスプレイだ。

 魔法式内部で計算できても、それを外部に表示する方法がない。

(例えば、円柱に数字を書き並べ、回転式で数字を表示するのはどうでしょうか? 回転させるのは、モーターの魔道具でできます。今までに解析した限りだと、研究は必要になってくるでしょうが、回転角度を調整する事はできそうです。いけますかね?)

 そこまで考えて、否定する。

(そもそも、モーターの魔道具もそれなりに大型です。それを横に並べるだけでも、かなりのスペースが必要になってきます。それに、十種類の信号をやり取りするのも大変そうです。ぼつですね)

 私はあごに手を当てて考えを進め、別の方法を検討してみる。

(では、大昔のハンドメイドマイコンのように、LEDのようなものを光らせてみたらどうでしょうか?)

 発行する部品を十個並べ、光った位置で数字を表現する方法の検討を進める。

 モーターの魔道具で十種類の信号を処理するものと比較した場合、オン・オフだけで処理できるようになるため、いける気がする。

(ライトのような魔道具はすでにあります。これでも大きなスペースが必要になってきますが、ごく小さな光で良くなるので、研究次第で小型化できるかもしれません)

 私はそのまま、この方法の検討を進めていく。

(問題になってくるのは、計算結果を保持しているメインルーチン内部の情報を、どうやって光の魔道具に通信するかですね)

 しばらく考えて、ボタンの魔法式で代用できると思いついた。

 魔道具のボタンは、魔法式のプレートから少量の魔力が流れ出るように設計されていて、ボタンで配線がつながると出口の部分に向かって魔力が流れるようになり、戻ってきた位置の魔法式で魔力が検出できたかどうかが分かる。

 ボタンの魔法式だけで、一つの小型の魔道具のような設計になっている。

 そう、形こそ一つのプレートに刻まれた単一の魔法式のようだが、私には分かる。

 出力側と入力側、メインの魔法式で、一つのプレート内部で通信するような特殊な構造になっている。

 プログラムを組んだことがある人であれば、プロセス間通信の仕組みを思い出してもらえると分かりやすいかと思う。

 この通信手段を、外部につなげればいいはずだ。

 ボタンの出力側の魔法式をメインの魔法式のプレートに配置し、銀線をつなぎ、入力側をLEDの魔道具のプレートにすれば、いける。