PDP-8(ピーデーピー エイト)
「もしよろしければ、私の研究室にも端末がありますから、そちらでご説明しましょう」算田という男がいった。
片田が隣に立つ学生を見ると、直立して算田に敬意を表していた。“信用してもよさそうだ”片田が思う。招きに応じることにした。
教室を出て、しばらく廊下を歩き、彼の研究室に入る。中には秘書と思われる初老の女性がいた。
「お客様です、恐れ入りますがお茶をお願いします」算田がその女性に声を掛けた。彼女が研究室から出て、給湯室に向かった。
「片田さん、片田順さんでしょう」算田が振り向いて言った。
片田が少しひるんで、うなずいた。
「やっぱりそうでしたか、いえ、ご安心ください。私も戦争を経験しています。当時私は工学部の学生だったので、学徒動員にはかからず、陸軍の研究所で勤労動員をしていました」
「陸軍の研究所ですか」
「はい、多摩陸軍軍事研究所です。所長は安田武雄中将でした。そこで電波兵器の研究を手伝っておりました。タイガー計算機を回していただけですが」
片田は安田武雄中将のことを知らなかった。安田中将は士官学校、陸軍砲工学校高等科を卒業したのちに、東京帝国大学工学部に員外学生として派遣された技術系将校だった。
員外学生とは、東京大学側から見た時に定員外だ、という意味だ。
安田中将はウラン235の核分裂エネルギーに注目し、一九四〇年に、これを爆弾として使えないかと提案し、理化学研究所に研究を委託している。レオ・シラード、アインシュタインがルーズベルト大統領に原爆開発の信書を送ったのが一九三九年なので、もしかしたら、欧米とは独立に発案したものかもしれない。
また戦争末期に陸軍内で特別攻撃作戦が検討されているときに、航空総監兼航空本部長だった安田中将は、これに反対した。そのため東条英機首相から更迭されている。
「さぞや、ご苦労されたのでしょう、そう一言申し上げたかっただけです」算田が言った。
「いえ、それほどでも」
「秘書の女性が戻ってきたら、この話はしません。この場だけにしましょう」
「そうしていただけると、助かります」
「ではコンピュータ、電子計算機の話に戻りましょう」
「先ほど教室にあった電子計算機はPDP-8という名前で、アメリカのデジタル・イクイップメント・コーポレーション社、略してDEC社の製品です」
「一般に販売しているのですか」
「はい、一万ドルしますが、市販しており、誰でも購入することが出来ます。私のような貧乏学者でも」
当時一万ドルといえば、日本円で三百六十万円である。大卒初任給が一万円から二万円の時代であった。高額ではあるが大学の研究室でも、助成金かなにかを得られれば、買うことはできるだろう。
「この部屋にもテレタイプがあり、向こうの計算機と接続されています」そういって算田がテレタイプの電源を入れる。そして、コントロールキーを押しながら、Eキーを押した。
これはENQ(問い合わせ)という信号をPDP-8に送る操作だ。
すぐにカタカタと音がして、紙に“PDP-8/S”と印字される。
「接続されているようですね」算田が満足そうに言った。
「PDP8には、計算機と会話しながらプログラムを作るという便利な機能が備わっています。それをFOCALといいます」そう言いながら、算田がFOCALとタイプする。算田がタイプしたものが、そのままテレタイプで印字されると同時に計算機の方にも信号として送られた。
次の行に*という記号が1文字印字される。これはFOCALのプロンプトだ。計算機がFOCALの命令を受け付ける準備ができた、と言う意味だ。
FOCALはインタプリタという対話式の開発言語で、現代ならばPythonなどのインタプリタ言語の御先祖さまだ。BASICよりも一つ前の世代になる。
「片田さんは砲兵科出身とお聞きしています。弾道計算でも行ってみましょうか」
「お願いします。弾道計算ができるのですか」
「簡単な物であれば、すぐに出来ますよ」
算田が壁の黒板に向かって、x軸y軸を書き、放物運動の運動方程式を書いて積分する。
「空気抵抗がなければ、こんな感じでしたよね」
「そのとおりです」
「では、プログラムにしてみましょう。大砲って、初速はどれくらいなんでしょうか。あと、仰角四十五度の時に着地までの時間は」
「砲によって、まちまちですが、秒速五百メートルくらいでしょうか。着地は、空気抵抗がなければ八十秒程度でしょう」片田が答える。
「わかりました。では仰角四十五度にしたときの弾道計算をしてみましょう」
太平洋戦争当時の代表的野砲の発射速度である。片田は九五式野砲や三八式野砲を想定した。
「初速はあとから変えられるように、質問形式にしておきましょう」そういって算田がテレタイプに向かってプログラムを打ち込み始める。
01.10 ASK “INITIAL VELOCITY=”, INITVEL
01.20 SET X=0.0; SET Y=0.0; SET PI=3.1415
01.30 SET ELEVANGLE = PI/4
01.40 SET G=9.8
01.50 FOR T=0.0, 1.0, 80.0; DO 2.0
01.60 QUIT
02.10 SET X=T*INITVEL*FSIN(ELEVANGLE)
02.20 SET Y=T*INITVEL*FCOS(ELEVANGLE)-0.5*G*T*T
02.30 TYPE “T= ”, T, “ “, “X= ”, X, ” “, ”Y= ”, Y, !
「左の数字は、行番号というもので、この順番に命令を実行します。初速はASKで質問して、INITVEL変数に格納します」
「変数ですか。関数の変数のことですか」
「コンピュータで変数といったときには、数値などを格納する入れ物という意味です。SET X=0.0で、Xという変数にゼロをいれなさい、という意味です」
「なるほど、では二.一行の等号も、左右が等しいという意味ではなくて、右辺で計算したものを左辺の変数に代入するということですね」
「そうです、そうです」算田が嬉しそうに言った。
「一.五行がすこし変わっていますが、これはTをゼロ、一、二と、一つずつ増やしてやって二.一行以降を実行しなさい、という意味です。八十までやったら、停止します」
「TYPEは何ですか」
「印字しなさい、という意味です。この紙、連帳紙といいますが、ここに結果が印字されます」
「80件も計算するのならば、どれほど時間がかかるのでしょう」片田が尋ねる。算田がにこりと笑い、言った
「あっというまですよ。やってみましょう」
算田がテレタイプに“GO”と打ち込み、キャリッジリターンキーを押した。
テレタイプが印字される。
INITIAL VELOCITY=:
算田が、500とタイプして、またCRキーを押す。初速は五百メートル毎秒とした。
とたんにテレタイプが、騒音を立て始め、連帳紙に文字と数字を打ち始める
T= 0.0000 X= 0.0000 Y= 0.0000
T= 1.0000 X= 353.5452 Y= 348.6615
T= 2.0000 X= 707.0904 Y= 687.5231
T= 3.0000 X=1060.6356 Y=1016.5847
……………
二分とかからずに、八十秒後まで計算し終えたようだ。というよりテレタイプの動作を観察していると、計算より印字の方に時間がかかっているに違いない。
片田が一連の数字を見る。
印象的な数字が片田の目にとまる。
X列の三行目だ。七〇七。これはルート二の逆数である。計算結果は正しいに違いない。その下の一〇六〇から七〇七を引くと三五三だ。X列の二行目と等しそうだ。小数点以下も目見当でだいたい一致している、差も間違ってなさそうだ。
「本当に、あっというまに計算してしまいましたね」片田が感心するように言った。
「そうでしょう。これがあれば、産業のあらゆる分野で計算が楽にできるようになります。それだけではありません。テレタイプと計算機の間のケーブルは電話線を使うことが出来ます。遠隔地から計算機に命令をあたえることもできます。国鉄の座席予約は既にそのように行われています」
片田が思う。『かぞえ』にこんなものを渡したら、一日中離れないだろう。『かぞえ』は室町時代の娘で、弾道計算尺を発明した数学マニアだった。
「どのようにして、こんなことができるのでしょう」
「一言で説明するのは難しいですね。幾つもの技術が積み重なってできていますから」
「アマチュア無線程度の電気回路の知識は持っています」片田は、こちらに帰って来てから、アマチュア無線の通信講座を学んでいた。
「電気回路だけではないのです。その上でオペレーティング・システムというものが動作しています。でも、回路がわかるのであれば、PDP-8の回路図があります。焼いて差し上げましょうか」
「いいんですか」
「いいですよ、DECはPDPの回路図を公表しています。購入すると回路図もついてくるのです。鈴木さん、この図面、青焼きにしてきてくれませんか」
算田が秘書にPDPー8の回路図を渡し、ジアゾ式複写機で複製を作るように指示した。
「それと、もしお望みでしたら、私のコンピューター講座の聴講生になりませんか」
片田は聴講することにした。
1 PDP-8上で動作するFOCAL(開発言語)とTSS/8(複数人で同時使用できるタイムシェアリングシステム)の歴史上のリリースは1968年です。一年前倒ししています。
2 本文中のFOCALプログラムは、動作確認していません。類似したN88BASICエミュレータで似たようなプログラムを作成して計算しています。
3 ENQ(問い合わせ)の描写は、想像で書いています。実際にこのようにコンピューターに接続したのかどうか、わかりません。




