百近い
「器用なものだ」
ノヴァーク博士はそこから伸びる配線を見ながら呟く。八本ごとにまとめられた線は、手作りの端子で接続されていた。
「試作品なので最低限の間に合わせになりますけどね。一度作ったら終わり、という代物ではないでしょうから分解や修理のしやすさにはかなり気を配って色々と設計してます」
ケレメンが電源線を接続すると、確認用の表示灯が中に詰められた不活性気体による紅い放電を起こす。部屋の電気は暗くされていたので、ケレメンの後ろから覗き込むノヴァーク博士にもその色は確認できた。
「それで、やりたい計算というのは?」
ケレメンがそう言うと、ノヴァーク博士は紙を取り出した。
「5567100と5617710の和。十六進数変換も書いてあるよ」
二進数の桁四つを十六進数の桁一つに置き換えることで、二十四個の0と1の羅列は六文字に変換されていた。操作盤の方も
「……準備がいいですね、54F27Cと55B82Eの和ですか」
そう言いながら、ケレメンは数字を確認しながら
「では、和を計算してみるとしようか」
「出力はこの下の方に出てきます」
ケレメンは操作盤の下の方に横一列で並ぶ表示灯を指した。
既に熱電子管の
機械的な反動によって接続と切断が起こっても問題ないように
数十万分の一秒というわずかな時間のうちに下の桁数の回路から上の桁数の回路へと情報が伝わり、その切り替えが見えないほど高速で伝わった電位差は操作盤の表示灯を一つおきに光らせた。
「……これでいいのですか?」
「計算通りだよ。最大の数同士を足したり、繰り上がりの確認なんかは既にやっているだろうから見た目でわかりやすい実演にはこういうものがいいのではと考えている」
「……確かに、単純な技術的側面の強調と同時に計算が正しいという証明も容易ですね」
「私ができる検算にも限度がある。計算機械を信用してもらうためには、誤りがなく高速だというのを伝える必要があるだろう」
実際のところケレメンはノヴァーク博士と計算機械とでどちらのほうが賢いか──単純な計算ではなくある程度複雑な操作であればノヴァーク博士のほうに軍配が上がるのは間違いないが──などということを考えていた。
「それで、これと遅延回路を組み合わせて乗算部分を作るわけか」
「そうなります。和が一周期で終わるとしたら、積には二十四周期必要ということになるわけですが」
ケレメンがこれに足そうとしているのが、入力の片方をそのままに、出力を桁数を少し送れさせ、かつ桁を一つ移動させながらもう片方の入力に入れるための機構であった。
「それにしても、二進数で作ると計算が楽になりますね」
「紙の上でやる分には量が多くなるのだが、演算のための素子は少なくて済む」
「おかげで設計はややこしくなるんですけどね」
そう言って、ケレメンは黒板の方を見た。
38
x42
----
76
152
----
1596
昔にやった十進数の二桁同士の積を二進数でやると、六桁同士の積になる。
100110
x101010
-----------
000000
100110
000000
100110
000000
100110
-----------
11000111100
このときの利点の一つは、足す前の状態の数に掛けられる数が0か1ということだ。0の場合は信号を送らないことになるし、1の場合は入力の信号そのままとなる。
もし仮に十進数でそのまま計算を行っていたとしたら、より複雑な機構が必要となっただろう。それを脈動的に送るにせよ、十段階の電圧で表すにせよ、あるいは十本の導線で代替するにせよ、回路は複雑なものとなる。
計算のたびに、ケレメンは人類が二進数を使えないことに苛立つようになっていることに気がついていた。技術者は人間を中心に置かねばならないという理念は理解していたものの、十進法という道具は指の本数などという非合理的な偶然をもとにしたものであると考えるまでにはなってきていた。
参考までに、ノヴァーク博士は二進数だとさすがに脳内で処理し切ることができないので十六進数への変換と計算ができるように数日間練習したという。
「とはいえ、桁を一つ移動させるというのは配線を戻す時にひとつずらすだけで良いのではないか?」
「出力が最大で48桁になるわけですから、実際はある程度の桁数で丸める必要があるわけです。そのための処理が少し大変なわけで……」
「そうか、繰り上がりがある場合には数字全体が変化するから単純にはいかないと」
「対数で言うところの整数部と小数部みたいな方法で桁数を管理するのも一つですが、今は全て整数だと考えて適宜桁を調整するのが限度だと思います」
「計算精度上、もし可能であれば完全な状態の積と丸められた状態の積が欲しいが……可能かい?」
「切り替えをどうするかですね、完全に計算してから後半部分の二十四桁を丸めるのと、前半部分の二十四桁に強く関わりそうな場所のみを計算するのとでは回路構成が異なります。前者の場合、無駄が増えますが……」
「実際のところ、電子の操作自体はあまり動的な影響を与えないように見えたが」
「電源の方で相当工夫しているんですよ、設計変更自体は問題ないはずです。機械が個別に動くように設計しているはずなので、組み立てた時にもきちんと動いてくれると信じるしかありません」
「還元的な設計、というわけか。数学的と言うべきか、論理的と言うべきか……」
ノヴァーク博士の言葉に、ケレメンは頷いた。
「助かるのは全ての入出力が二値化されていることですよ、そうでなくて連続的だったら、もっと素子の特性を考える必要があった。離散的な機械のいいところは、いいかげんに作っても動きやすいところだとは思います」
ケレメンはそう言って、装置の電源を切った。