1980年台の終わり頃、筆者はHP-28Sという電卓を購入した。それまでずっと、HP-19Cという機種を使っていた。
・HP-28 シリーズ - Wikipedia
・HP-19C/-29C - Wikipedia
HP-28Sは、縦長のクラムシェル型なのだが、液晶のある本体は右側、アルファベットキーが左側にある「左開き」になっている。後年、国内で販売された見開き型の電子手帳では、左側に液晶、右側にアルファベットキーのある「右開き」だった。HP-28Sの表示装置は、ドットマトリックス液晶で、23文字×4行(137ドット×32ドット)の解像度を持つ。
それまで使っていたHP-19Cは、7セグメントLEDが1行のみであったことに比べると格段の進歩である。アルファベットが表示されるようになったため、16進数も扱えるようになった。
メモリは32キロバイト、クロック周波数は1 MHz(HPのSaturnコア)と、計算速度も格段に速くなった。大学時代、階乗計算を行うプログラムを作って比較したらHP-19Cは、カシオのFX-502Pよりもかなり遅かった。
・HP Saturn - Wikipedia
HP-28Sは、通常の電卓として使う分には、従来の計算方式であるRPN(Reverse Polish Notation)のやりかたでそのまま利用できた。しかし、プログラムやユーザーから見える内部構成は大きく異なっていた。
もともとRPLは、数式処理やグラフ表示などの高度な機能を持つ電卓を記述する言語として作られた。これをSystem RPLという。本格的な言語としての記述力があるため、数式処理やベクトル、行列演算、関数定義からのグラフ描画といった高度な機能が可能になった。
1987年のHP-28Cという機種ではじめて、プログラミング言語としてUser RPLが搭載された。System RPLは、コマンドの実行時にパラメーターのチェックを行わない。このため、演算対象が存在しない、あるいは型が異なるなどが原因でシステムは停止してしまう。これは、実行速度を確保するためには必要なことだった。これに対してUser RPLは、実行前に対象のチェックを行い、適切なエラー表示などを行う。このため、実行でシステムが停止してしまうことはないが、その分、実行速度が遅くなる。
筆者の購入したHP-28Sは、このHP-28Cの後継機種である。気に入った機能の1つに単位換算機能がある。複雑な単位の換算やSI接頭辞の処理が可能だった。メートルにSI接頭辞のギガを付けて「Gm」として単位の換算、「1ギガメートルは何メガメートルか」を計算させることが可能だ。
さらには、ユーザーが単位を定義し、これを使った単位の変換も可能になっていた。たとえば、「byte」という単位と「Kbyte」というユーザー定義単位は
変数 byte = { 1 "1"}
変数 Kbyte = {1024 "byte"}
と、変数名を定義したい単位名にして、リストで換算値と単位を入れておく。
このRPL方式は、後継機種となるHP-48、HP-49系に引き継がれさらに強化される。HP-48系では、単位の換算だけでなく、次元が同じ異なる単位(たとえばマイルとフィートなど)の間での演算が可能になった。たとえば「1フィートと3インチを足す」ことができる。単位はアンダーバーを前置することで表記でき、キー入力が簡単になった。3メートルなら「3_m」と表記でき、シングルクオートで括る必要がない。
前述の例は、
変数 byte = 1
変数 Kbyte = 1024_byte
となる。しかし、このRPLは、HP-49系を最後に製品が登場していない。
今回のタイトルネタは、1970年の英国TVドラマ「UFO」(邦題謎の円盤UFO)のエピソード「Computer Affair」である。UFOの攻撃に失敗した要撃機インターセプター 3機は、衝突回避のためのコース変更をオペレーターに要求する。しかし、そのうち1機は、変更が間に合わずUFOに攻撃されてしまう。コンピュータの指示に間違いがあったのか? 人間のミスなのか? さらにオペレーターと、生き残ったパイロットの間に親密な関係があったことが判明。状況は複雑になるが、組織として問題を解明する必要があった。











![[USBで録画や再生可能]Tinguポータブルテレビ テレビ小型 14.1インチ 高齢者向け 病院使用可能 大画面 大音量 簡単操作 車中泊 車載用バッグ付き 良い画質 HDMI端子搭載 録画機能 YouTube視聴可能 モバイルバッテリーに対応 AC電源・車載電源に対応 スタンド/吊り下げ/車載の3種類設置 リモコン付き 遠距離操作可能 タイムシフト機能付き 底部ボタン 軽量 (14.1インチ)](https://m.media-amazon.com/images/I/51-Yonm5vZL._SL500_.jpg)