第4話 トロンチップ

 ようやく腰が据わって新しいプロジェクトが始まった。

 名にしおうトロンチッププロジェクトである。

 本気の証拠に、本社の方からも人が送られて来た。というよりプロジェクトに携わることができる腕のある先輩たちがほとんど辞めてしまったのだから、外から人を入れないと成り立たないという現実がある。


 トロンチップは、坂村健という東大講師により提唱されたプロジェクトだ。何度か記事を読んだが内容があまりにもふわっとしていて良く分からなかった。名前だけが独り歩きする良い例である。あちらこちらのSFから適当に切り貼りしたような未来絵図ばかり目についたと覚えている。

 いったいどこの誰が壁一面にコンピュータチップを埋め込んだ家に住みたがるというのか。過剰な計算力を使って、やることと言えば小便のたびに健康チェックをするだけという大笑いの光景が提示されていた。

 だが何の思想も持たない上の連中に取っては渡りに船の提唱だ。多くの会社がこれに飛びついた。

 時代はまだまだCISCという合言葉のもとに、国産のCPUを作ろうという話になった。

 三つの会社が協力して、それぞれ異なるビットサイズのCPUを作る。

 我が社が担当したのはその中でも最大のサイズの32ビットCPUである。強力な機能がてんこ盛り。トラブルが予感される無茶ぶりプロジェクトである。


 見知らぬ管理職に見知らぬ人々。あっと言う間に新しい課ができて配属される。かなりの大所帯だ。


 何の指示も貰えなかったので、自分で勝手に仕事を作る。

 演算をやろうと思った。まずはビット単位の演算シミュレータだ。CPUの中ではビットと呼ばれる0と1の数字のみで構成された情報群が飛び交っている。これらを扱い加減乗除の基礎的な算術を行う。その部分を確定しようと。


 演算シミュレータを作り上げるのに三ヶ月間を要した。それを使って、加減乗除操作群を組み上げる。

 一番難しいのは除算だ。正負の数値を網羅して引き算、足し算を駆使して割り算を形作る。

 どこをどう弄っても結果が合わないので、大変に面白い。

 除算に関しては色々な資料があるのだが、それに従って組んでも正しい結果がでないのである。

 そのうちにあることに気がついた。演算における歪みの原因についてだ。


 ある数値を0と1で表す。このとき、正の世界から見ると、数値0は二進数000・・・0で表現される。一方、負の世界(補数と呼ぶ)から見ると、数値0は二進数111・・・1で表されるのが正しい。つまり本当の二進数においては0を表現するのに二通りのやり方がある。それはあたかも二つの世界の中央に鏡をおいたようなものだ。鏡に0を写すと1になり、1を写すと0になる。単純にして美しいその姿。

 つまりこの鑑を中心とした世界では、正のゼロと負のゼロがあるということだ。これが数値的には正しい姿である。ゼロには正負が無いという考え方自体が01の世界では間違っているのである。

 ところが遥か昔に二進数を考えた人は、数値0を表す二進数が二つあるのはおかしいと思ったようだ。結果として111・・・1は数値0ではなく、数値ー1としてしまった。

 これが大失敗である。正負反転をしても、乗算、除算をしても、どれもこの点で結果がずれて、補正をしないといけない羽目になったのである。

 親ガメこけたら皆こけた。

 しかし、もうやり直しは利かない。間違ったやり方が一度広まると修正することはできなくなる。歴史の重みである。


 本にはこれら数値演算について説明されているがそれは役に立たない。本来の知識を一部切り取って提示しているだけなので、実際の正しい式とは違いがあるのだ。

 苦労して結果を出し、皆を集めてレビューをした。


 酷評された。みな私が命令解析シミュレーターを作っているものと思っていたのだ。

 いったいどこで何が間違ったのやら。仕事の内容を秘密にしていたつもりは無い。毎回きちんと報告していた。どこからもクレームが来なかったのに最後の最後でこの有様だ。

 えええ~、と叫びたいのはこっちだ。

 命令解析シミュレーターなんかどこからも指示されていないぞ。

 命令解析モジュールの基礎構造すら設計者は共有していないのだ。それでシミュレーターなどできるわけがないのは理の当然。


 今ならわかるがこれは課長クラスのミスだ。部下がかかっている仕事の内容さえも理解せず、情報の共有を行っていないのだからうまく行くわけがない。


 かくして三か月の苦労は水の泡と消えてしまった。

 骨折り損のくたびれ儲け。

 大迷走はまだ続いていたのだ。

  • Xで共有
  • Facebookで共有
  • はてなブックマークでブックマーク

作者を応援しよう!

ハートをクリックで、簡単に応援の気持ちを伝えられます。(ログインが必要です)

応援したユーザー

応援すると応援コメントも書けます

新規登録で充実の読書を

マイページ
読書の状況から作品を自動で分類して簡単に管理できる
小説の未読話数がひと目でわかり前回の続きから読める
フォローしたユーザーの活動を追える
通知
小説の更新や作者の新作の情報を受け取れる
閲覧履歴
以前読んだ小説が一覧で見つけやすい
新規ユーザー登録無料

アカウントをお持ちの方はログイン

カクヨムで可能な読書体験をくわしく知る