Manchester Small-Scale Experimental Machine
プログラム制御式コンピュータの世界初の設計はチャールズ・バベッジの解析機関で、1830年代のイギリスでのことである。約1世紀後の1936年、同じくイギリスの数学者アラン・チューリングは後にチューリングマシンと呼ばれるようになる概念を発表した。これは、機械的な計算の限界を考えるための理論上の概念だった。チューリングは実際のマシンを想定したわけではなく、テープに記された命令に従ってテープ上のシンボルの読み書きなどの操作を行う人を "computer" と呼んだ。チューリングは、数学の問題を解くアルゴリズムを書ける場合、チューリングマシンでそれを実行できることを証明した。
コンラート・ツーゼのZ3は、世界初のプログラム可能な完全自動式コンピュータで、二進デジタルロジックで構成されていた。ただし、チューリングマシンに存在する条件分岐の機能がなかった。1941年5月12日、ベルリンの Deutsche Versuchsanstalt für Luftfahrt(ドイツ航空研究所)の観衆の前でデモンストレーションを成功させた。Z3は外部のテープにプログラムを格納していたし、電子式というよりも電気機械式だった。1943年のColossusは世界初の電子式計算装置だが、暗号解読専用であり、汎用の機械とは言えない。
1946年のENIACは、電子式で汎用という意味で、世界初である。条件分岐も可能でチューリング完全であり、幅広い問題を解けるようプログラム可能である。しかし、そのプログラムはメモリ上に格納されるわけではなく、パッチコードやスイッチの状態で保持されていた。
そのためプログラムを入れ替えるには数日を要した。チューリングやコンラート・ツーゼといった研究者もメモリをデータとプログラムの両方を格納するのに使うという考え方を研究していたが、現代のコンピュータのほとんどで使われているコンピュータ・アーキテクチャを定義したとして広く知られているのは、数学者のジョン・フォン・ノイマンである。
ノイマン型コンピュータの構築は、プログラムの格納に適したメモリデバイスを用意できるかどうかにかかっていた。第二次世界大戦時、レーダー信号の散乱を除去するという問題に対処しようとしていた研究者らが遅延線装置を開発し、その最初の応用がジョン・プレスパー・エッカートの開発した水銀遅延線であった。レーダー発信機は一定周期で短いパルスの形で電波を放出し、その反射をCRT画面に表示する。ここで興味があるのは動く標的だけであるため、静止した物体からの反射は除去するのが望ましい。このフィルタリングは、1つ前のパルスの反射と現在の反射を比較し、変化していない部分を除去すればよく、それによって動く物体のイメージだけが信号に残る。前に受信したパルスを比較のために蓄えておくために、遅延線という方式が考案された。
1945年10月、チューリングはイギリス国立物理学研究所 (NPL) に勤務するようになった。当時の軍需省内の科学者らはイギリス国内で機械による計算をすすめる国立数学研究所が必要だと結論付け、NPLに数学部門が設置された。1946年2月19日、アラン・チューリングは電子式プログラム内蔵型コンピュータの設計に関する論文を提出し、それが後に Automatic Computing Engine (ACE) と呼ばれるようになった。