会員の皆様へ (2003年5月のご挨拶)

 

コンピュータ事始め(HP 25ミニ)

忘却とは忘れ去ることなり

4月のある日の夕方、東の空に大きな虹が出ているのを見つけました。(上の写真)
急いでデジタルカメラで撮影してみましたが、パソコンで見ると外側にも二次の虹も見えます。
子供の頃は、空が広かったせいか、よく、虹を見ました。最近では、本当に久しぶりのことです。
 というわけで、忘れないうちにと、自分とコンピュータとの関わりをまとめてみました。

ソニー製 電子式卓上計算機

私がコンピュータというものに(意識して)触れたのは、大学4年のことで、茫々30年前のことです。
そのきっかけになったのは、ソニー製の卓上計算機でした。
 これは、短いながらプログラムを記憶する機能が付いていました。
当時、数学・応用数学科の学生には、大型計算機の実習授業があったのですが、私たち物理・応用物理科の学生向きには、なかったように記憶しています。
 ここで私は、初めてプログラムというものを知ったと言ってもよいでしょう。
 私を目覚めさせたのは、ある数値の計算でした。簡単に書けば、ある数の対数を求めるものです。
 おそらく、この欄の読者の方々は、「なんだ。対数関数を使えばいいだけではないか」と思われることでしょう。
 確かに大型計算機であれば、FOTRANが使えたはずですので、造作もないことだったでしょう。
 ですが、わずかな命令しか記憶できない卓上計算機で、しかも、関数機能(当時はなかったのですが)が付いていない状態でどうやって対数を計算したらよいのか?
 計算機には、加減乗除と平方根の命令はあります。これらの組み合わせで対数を求める必要があります。
 私は、解析学の教えるところにより対数をべき級数に展開して答えを出そうとしました。
 具体的には、自然対数 LN(x)=(x-1)-(x-1)^2/2+・・というものです。
 しかし、残念ながら、多くの項数を計算する命令を記憶することができなかったのです。
 せいぜい、第2項までしか扱うことができませんでした。では、どうしたらよいか?
 級数は、xが1に近くなればなるほど少ない項数で正確な値に近づけることができます。
 そして、xが1になれば、第1項だけで正確な値になります。
 ここで賢明な読者の方であれば、お分かりになったかと思いますが、私は、xの平方根を使ってみました。
 平方根には、重要な性質があります。xの平方根をとり続けると、xがどんなに大きい正数であってもやがては1に近づくということです。
 例えば、x=2としてみましよう。
 平方根を使わない場合で、第2項まで取ってみましょう。
 LN(2)≒(2-1)-(2-1)^2/2=0.5となります。
 では、平方根を1回使ってみます。ただし、正しい値にするためには、2倍しなければなりません。
 LN(2)≒2×{(1.414-1)-(1.414-1)^2/2}=0.656
 正しい値は、LN(2)≒0.693ですので、確かにより近い値が出ます。
 平方根を3回取った場合は、
 LN(2)≒8×{(1.09051-1)-(1.09051-1)^2/2}=0.6844となってかなり近くなりました。
 更に平方根を8回取った場合は、LN(2)=0.69314となって3桁まで一致します。
一般的には、ランダウの公式 lim(n→∞)n×(xのn乗根-1)→LN(x)が知られています。
興味がある方は、エクセルで簡単に計算できますので試してみてください。

横河ヒューレットパッカード製 マイクロカリキュレータ 25ミニ

大学卒業後、測量会社にしばらく勤務したことがあります。
 そこで図面から面積を計算する方法を知りました。座標法という、その方法は、計算機と非常に親和性がある方法でした。
 以前、座標法の話は、ここに書いたことがありますので、繰り返しませんが、図面から機械で読み取ったx,y座標値を元に面積等を計算します。
 電卓で計算することもできるのですが、少し面倒です。
 ヒューレットパッカード社製の25ミニというプログラム可能な電卓を入手したのは、この頃だったと思います。(手元のノートでは1976年7月となっていました)
 49ステップまでのプログラムを記憶することができ、計算式は、逆ポーランド記法という特徴のある方式で書くようになっていました。
 手のひらに載るサイズで、ソニーの計算機と比較するとわずか5年足らずの間に卓上計算機の世界でも驚くべく進歩があったことが伺えます。
 さて、逆ポーランド記法というのは、耳慣れない言葉ですが、括弧のいらない計算方式です。
 例えば、(1+2)×3=9という式を1[送り]2[送り]+3×というように入力・計算します。
 [送り]というのは、スタックに記憶する手続きです。スタックというのは、記憶領域で最後に追加したものが最初に取り出されるようになっています。
 ちょっと価格が高くて(本給の半分ぐらいだったかな)。買うのに逡巡したのを覚えています。
 つい最近まで製品が手元にあったのですが、廃棄してしまいました。写真がないのが残念です。
 説明書はとってありましたので、表紙の見返しのところにある写真をスキャンしてみました。

 黒を基調に青がアクセント的に使ってある、結構、おしゃれなデザインでした。
 いずれにしても49ステップの中にどのように命令を組み合わせて実行したらよいか、というまさに職人芸の世界でしたね。(下は当時のノート。1976/7/25の日付が見える)

 ここまでは、入出力とも基本的には、「数値」が対象となっていました。

NEC製 NEAC100

オフコンです。オフのコンパではありませんよ。オフィスコンピュータの略でした。
「でした」と過去形で書くのは、すでにオフコンという用語が使われなくなったからです。
 当時(1976年頃)は、オフコンが大変使われるようになりつつある時代でした。
私は、このNEAC(ニアック)でCOBOL語を実践的に勉強しました。
(1976/4/5の日付が見える当時の勉強ノート)

 テキストは、「オーム社 入門COBOL」を参考にしました。
 普通、データ及びプログラムは、パンチカードで入力するのが主流でしたが、会社では、紙テープを利用していました。

※1976/11/21購入の「入門 COBOL」(オーム社)

 紙テープは、縦1列に穴を開けることができて、7桁をデータに8桁目をパリティビットとしてデータのチェックに使用するコードになっていたように記憶しています。
 入社してしばらくすると穴の空き具合でデータの内容を読み取れるようになりました。
 なんと言っても英数字しか使えないわけですから、簡単です。まさに「人間テープリーダー」ですね。
(下は当時のノートからテープのさん孔穴の配置図の一部)

 NEAC100は、内部記憶装置として、ハードディスクより速度的に速いとされていた磁気ドラム!を搭載していました。
 ハードディスクは、確か、4MBのもの!?を取り外し可能な形で持っていたように思います。
 このあたりのスペックは、どれをとっても!とか?とかを付けたくなってしまいます。
COBOL語は、本来は事務計算用言語として開発されたものですが、会社では、計算に専ら使用していました。
 10進計算ですから誤差が出にくかったです。

コモドール社製 ペット

測量会社から不動産会社にかわって、1978年頃のことだったでしょうか。
会社の総務部長さんが1台のパソコン(当時はマイコン)を会社の電算室にいる私たちに見せてくれたようです。



 上図は、当時の電算室の私。まだ、ディスプレイはなくて、テレタイプ風のキーボードでした。FACOM230だったかな?

 正直、このときは、その意味するものが理解できていたとは言えませんでした。
内蔵のBasic語でプログラムを書くことができたのですが、玩具のようで、現在のようになるとは推察できなかったです。
 この後、1981年11月になって、いよいよ、東芝のパソピアとの出会いとなるわけですが、そのあたりは、「コンピュータ事始め(東芝パソピア)」に回させていただくことにします。

終わりにあたって

では、今月は、ここまで。
皆様、お元気でお過ごし下さい。また、来月、お会いしましょう。
  

前回のご挨拶に戻る今月のご挨拶に戻る次回のご挨拶に進む