「最初のコンピュータとは何か?」という問いにどのように答えるのかは、コンピュータをどのようなマシンと定義するのかという問題でもある。「コンピュータと呼ばれているもの」をどのように定義するのかに関しては様々な議論がある。
ここでは、コンピュータ=「プログラム内蔵方式のデジタル型電子式計算機」という定義を取りあげ、いくつかの議論を紹介しておくことにしよう。
ただし星野力氏は、下記のように「プログラム内蔵」だけでは不十分で、「プログラム可変内蔵」と定義すべきだとしている。すなわち、「プログラム内蔵」に関して、「プログラム可変内蔵」と「プログラム固定内蔵」の2タイプを分けて考えるべきだとした上で、「プログラム可変内蔵」=「コンピュータ」と定義している。
「後の一九四八年、一入力対一〇〇出力のマトリックススイッチを命令デコーダ(解読器)とするような改造が行われ、メトロポリスは(フォン・ノイマン夫人のクララの助けによって)この機能により、世界最初のモンテカルロ法を計算している。/このことからENIACは十分にプログラム固定内蔵方式といえる。」(p.90)、「ENIACの革新的意味は何だろうか?それは電子式で、デジタル方式で、プログラム内蔵型で、実用規模の科学計算汎用である計算機械として、世界最初のものである。」(pp.96-97)
- 星野力(1995)『誰がどうやってコンピュータを創ったのか』共立出版の第6章3節「プログラム内蔵方式は誰の発明か?」(p.104-)における「エッカート」説批判
同書では、エッカートとモークリーによって1945年9月に書かれたEDVACのプログレスレポート、バークスによる証言(Burks et al.,1988) 、1970年代のスペーリ・ランド対ハネウェルのENIAC訴訟のときに弁護士によって発掘された文書「文書磁気ディスクに関する覚書」などに基づきながら、エッカート説に対するゴールドスタインの批判、および、エッカートとモークリによるゴールドスタインの議論に対する反論が紹介されている。
なおこの論争に関して星野氏自身は、下記のように、エッカートは「磁気ディスクや遅延線という内部記憶装置の考案」=「プログラム可変内蔵というアーキテクチャの考案」と考えているが、そうした同一視はあまり適切ではない、としている。ハードウェアを考案したこと「エッカートらは磁気ディスクや遅延線というハードウェアを考案したことは、直ちにプログラム可変内蔵というアーキテクチャも考案したことである、といったような認識をどこかにもっているように思える。これに対して後世では(当時でもフォン・ノイマンは)、プログラム可変内蔵方式の本質は論理的なレベルにおけるアーキテクチャと、そのチューリングマシンとしての万能性にある、と理解していることである。これが正しいとすれば、フォン・ノイマンの業績は、プログラム可変内蔵方式を論理的に明確にし発展させたということであろう。」(p.109)というように主張している。- 横山保(1995)『コンピュータの歴史』中央経済社における「エッカート」説批判=「(最初の)ENIACは、ワイヤリング方式によるプログラム入力であったため、プログラム内蔵式ではない」
横山保(1995)は「ENIACの大きな欠点の一つは、プログラムの作成がプラグ、ソケットによるワイヤリング(wiring)方式であることであった。一つのプログラムをつくるのに、数人の人によって数日を要し、数百のワイヤーの結合を行わなければならなかった。この欠点を解決し、完全なフレキシシビリティをもたせるようにしたのがプログラム内蔵式(stored program)の考えである。この考えは主に、ジョン・フォン・ノイマン(John von Neumann,1903-1957)によるものである。」(p.84)としている。
ただしその一方で、Burks, A.W.,Godstein, H.H., von Neumann, J. (1946) “Preliminary Discussion of the Logical Design of an Electronic Computing Instrument”などを典拠として「1944年、ゴールドスタインはノイマンにENIAC計画を説明している。そして両者はプログラム内蔵式の考えを発表している」(p.85)としている。[関連参考論文]- Burks, A.W.,Godstein, H.H., von Neumann, J. (1946) “Preliminary Discussion of the Logical Design of an Electronic Computing Instrument”
https://www.cs.princeton.edu/courses/archive/fall09/cos375/Burks.pdf - Metropolis and J. Worlton,(1972) “Trilogy of Errors in the History of Computing,” First USA-Japan Computer Conference Proceedings, pp.683-691
- Metropolis,et al.(Ed.1980)History of Computing in the Twentieth Century,Academic Press
本書中に、Burks, W.”From ENIAC to the Stored-Program Computer : Two Revolutions in Computers”(pp.311-344)や、Eckert,J.P.”The ENIAC”(pp.525-539)、Mauchly, J.W. “ENIAC” (pp.541-550)などが収録されている。
- Burks,Alice R., Burks,Arthur W.(1988) The Fisrt Electronic Computer, The Atanasoff Story, The University of Michigan Press[邦訳:大座畑、重光監訳『誰がコンピュータを発明したか』工業調査会,1998]
- 横山保(1995)『コンピュータの歴史』中央経済社における「エッカート」説批判=「(最初の)ENIACは、ワイヤリング方式によるプログラム入力であったため、プログラム内蔵式ではない」
Burton, Christopher P. “Rebuilding the First Manchester Computer” in Rojas,R., Hashage, U. eds. (2000) The First Computers History and Architectures, pp.379-386
同論文のアブストラクトでBurtonは次のように1948年6月21日に内蔵プログラムを初めて動かした書いている。
“The University of Manchester Small-Scale Experimental Machine, the “Baby,” first ran a stored program on June 21, 1948, thus claiming to be the first operational general-purpose computer. ”
「このSSEMの性能はまったくたいしたものではなかったが、ちゃんとメモリ上に置いたプログラムが作動し、いわゆるフォン・ノイマン型の紛れもなくプログラム記憶方式のコンピュータである。EDSACを最初のプログラム記憶方式のコンピュータとする文献は多いが、これは間違いである。EDSACは最初に実用になったコンピュータではあるが、Babyのほうが約1年早くプログラム記憶方式のコンピュータとして動いた。」(p.126)
SSMEすなわちSmall-Scale Experimental Machineは、その名称を直訳すると「小規模実験機」となる。そのことからもわかるように、実験機であり、実用機とはいいがたい。そのため大駒氏自身も上記のように述べる一方で、SSEMの記憶容量はわずか32語(1語は32ビット)に過ぎず、実行可能な命令もったの7種類であったことから、「コンピュータというよりはむしろ、ウィリアムズ・キルバーン管(一種のブラウン管)がメモリとして使えるかどうかの、動作テスト機械であった」(p.123)としている。
なお大駒誠一氏は、Okoma, Seiichi(2000) “The First Japanese Computers and Their Software Simulators” in Rojas,R., Hashage, U. eds. (2000) The First Computers History and Architectures, p.421で富士フィルムのFUJICが1956年3月に日本で製造された最初のプログラム内蔵方式コンピュータであるとしている。
“The FUJIC, a monumental computer, was completed in March 1956. It was the first stored-program computer
made in Japan.”
- 星野力(1995)『誰がどうやってコンピュータを創ったのか』共立出版,p.81
「本書においては、(そして多くのコンピュータ科学・技術に携わる人たちの間では)コンピュータという用語は厳密には<プログラム可変内蔵方式>を意味している。第七章で述べるように、この意味で最初に実用に達したコンピュータは一九四九年のEDSACである。」(p.81)、<プログラム可変内蔵方式>という構想はすでにEDVACマシンの開発時から存在したが、「EDVACは開発関係者間の意見の対立により大幅に完成が遅れ」たため「世界最初のコンピュータ(プログラム可変内蔵方式と定義する)として出現したのは、このEDVACの影響下に、イギリスはケンブリッジ大学でモーリス・ウィルクス(Maulice Wilkes)によって製作され、一九四九年五月にプログラムの実行を開始したEDSAC(Electronic Delay Storage Automatic Calculator)(32ビット512語の遅延線メモリ、3,000本の真空管)だったのである。」(pp.118-119)としている。
- 横山保(1995)『コンピュータの歴史』中央経済社,p.85
「最初のプログラム内蔵式のコンピュータであるEDSAC・・・このコンピュータでは、ソフトウェアの出発点であるサブルーチン・ライブラリの仕事が行われている。このサブルーチン・ライブラリは150のサブ・ルーチンからなっていたといわれている。」
- Rojas,R., Hashage, U. eds. (2000) The First Computers History and Architectures, p.xii
Napper, R.B.E. “The Manchester Mark 1 Computers1″と、Burton, Christopher P. “Rebuilding the First Manchester Computer”の論文を紹介した説明文の中で、下記のように、Manchester Mark Iが世界最初のプログラム内蔵方式コンピュータである、としている。“Brian Napper and Chris Burton analyze the architecture and reconstruction of the Manchester Mark I, the world’s first stored-program computer.”
[改訂履歴]
2026年8月5日 文章表現の一部訂正