PR


写真4: ビジネス用コンピュータ IBM 1401(1959年)

 IBM 1401は累計で2万台も売れたビジネス用コンピュータだ(写真4)。IBM 1401はIBM 1620の事務用版小規模コンピュータであった。

 1語は,6ビットのキャラクタ(または英数文字と呼ぶ)と2ビットのパリティ・ビットなど,合計8ビット(バイト)で構成された。キャラクタは上位2ビットのZoneビットと下位4ビットは「数字」ビットで構成され,IBM独自のBCD(Binary-Coded-Decimal)キャラクタ・コード化を採用している。すなはち,1キャラクタで1桁の10進数データを実現している。メモリー・アドレスも計算用データもキャラクタ内の10進数データを,そのまま,使っている。

 インテルの16ビット・マイクロプロセッサ8086には,バイトで構成しているASCIIコードの10進数データをそのまま計算するためのASCIIコード用補正命令が設けられている。

 IBM 1401では,メモリーアクセスが要求される1バイト命令では,メモリーアクセスには前の命令が残したアドレスを使っている。世界初のマイクロプロセッサ4004でも同様なメモリーアクセス方法を採用した(関連記事:世界初のCPU「4004」開発回顧録(6))。

 電子回路素子としてトランジスタとダイオードなどの能動素子を使い,2種類のサイズの基板を用意し,フリップフロップや論理回路などの標準化した回路モジュールを数多く揃えた。この手法は集積回路(IC)が登場した後でも使われた。私の記憶では,リコーのシステム開発部門では1972年頃まで使われた。


写真5: 小規模科学技術計算用コンピュータ IBM 1620(1959年)

 小規模科学技術計算用コンピュータIBM 1620写真5)は懐かしいコンピュータだ(wikipedia)。初期のIBM 1620では,加算回路を持たずに,演算はルックアップテーブル(テーブル参照)を使ってソフトウエアで実現した。IBM 1620が小規模科学技術計算用コンピュータとして成功した要因は,低速な磁気ドラム・メモリーの代わりに高速なコア・メモリーを採用したことだった。1桁は6ビットで,最小メモリー容量は2万桁だった。IBM 1620 Reference Manualによると,命令長は12桁で,命令部が2桁,オペランド部が10桁(5桁のアドレス x 2オペランド)である。したがって,メモリー to メモリー・アーキテクチャである。データ長は可変である。データ情報として,データの開始と終了のフラグがデータに内蔵されている。

 ホフ博士が世界初のマイクロプロセッサ4004の原案を提案した時の基本方針は,命令に使うハードウエアを簡単化してソフトウエアで機能を実現する,であった。一方,私の考え方は,少量のハードウエアで命令や機能を追加し,性能向上とプログラム・サイズ減少を図ることだった(関連記事:世界初のCPU「4004」開発回顧録(5))。


写真6: DECの最初のコンピュータ(1960年)

 1960年に販売を開始したDECの最初のコンピュータはPDP-1(Programmable Data Processor-1)であった(写真6)。PDP-1は,命令語長もデータ語長も18ビット,標準メモリー容量は4Kワード,サイクルタイムが5マイクロ秒の磁気コア・メモリーを採用した2進コンピュータだった。メモリーを使う最小命令実行時間は10マイクロ秒だった。レジスタ・アーキテクチャはシングル・アキュムレータ&メモリーで,アドレス指定方式には直接アドレス指定と間接アドレス指定を採用した。すなわち,PDP-1では,演算はアキュムレータとメモリー間で実行され,メモリーがレジスタとしての役割も果たしている。

 PDP-1アーキテクチャの基本は,ミニコンやマイクロプロセッサなどに広く採用され,性能向上とプログラム・サイズ減少などのために,汎用レジスタやインデックス・レジスタやスタック・ポインタなどが次々と追加された。また,アドレス指定方式も,性能向上とプログラム・サイズ減少のために,豊富になった。ミニコンやマイクロプロセッサの原点にもなったPDP-1のマニュアルは読む価値が非常に高い。


写真7: Kitchen Computer (1969年)

 有名な高級百貨店Neiman Marcusは,話題性を求めて,顧客向け1969年版カタログ本の表紙にKitchen Computerを飾った(写真7)。ただし,販売はしなかった。コンピュータが台所に入ってくる時代を暗示させた広告だった。