The short answer
Why was instruction storage part of the computer’s memory problem? Compare the 1945 typescript with later design records, then trace a small invented program to see how stored words become operations only when control interprets them.
Original comparison
Four sources of evidence answer different questions
A report, an author list and a program trace are useful for different purposes.
| Country | Useful for | Limit |
|---|---|---|
| 1945 typescript | Reading the draft’s divisions and memory argument. | Does not prove a completed machine or settle every priority claim. |
| 1946–1947 reports | Identifying later design, engineering and programming stages. | A list alone is not inspection of all underlying reports. |
| Toy trace | Testing stated instruction, data and sequencing rules. | Does not measure historical performance or reproduce the EDVAC instruction set. |
Chronology
A timeline of the turning points
The First Draft
Dated design document for a contemplated EDVAC system.
Logical design at IAS
The subsequent report credits Burks, Goldstine and von Neumann.
Physical realisation report
The report list separately identifies Bigelow, Pomerene, Slutz and Ware.
Edited reset
Godfrey’s introduction explains corrections and supplied references in the later edition.
Treat a first draft as a design document
The title page dates the report 30 June 1945 and places it under a contract between the Army Ordnance Department and the University of Pennsylvania. The Smithsonian copy is a scan of the historical typescript, with many blank verso pages. A separately available 1993 reset includes an editorial explanation of corrected typographical errors and supplied references. These editions should not be described as identical originals. The report contains unfinished references and discusses a contemplated device; its date does not establish that EDVAC was then operational. What it gives us is a structured argument about what an automatic electronic computer would need.
Separate arithmetic from the control of arithmetic
Sections 2.2 and 2.3 distinguish the central arithmetical part, CA, from central control, CC. One carries out numerical operations; the other sequences the operations needed for a problem. The distinction helps explain why a capable adder is not by itself a general-purpose computer. Someone or something must select operands, choose the next action and arrange the movement of results. The draft also distinguishes the particular instructions defining one problem from the general operating machinery that follows them. Replacing a task should not require treating every piece of the control mechanism as a newly invented physical device.
Sources for this section: [1]
The memory argument includes instructions
Section 2.4 lists several demands on storage: partial results, instructions, tables, initial conditions and material used in successive approximations, among others. Section 2.5 considers treating memory as one organ, M, with parts as interchangeable as possible. The point is not simply that a computer remembers numbers. Instructions themselves can be substantial material that must be retained and accessed. The following discussion also identifies input and output, connecting the internal system to an external world. Those functions give the design a working organisation; they do not establish every detail of a later machine’s word format, memory technology or timing.
Sources for this section: [1]
Recover the development team from more than a title page
The draft bears von Neumann’s name, but the Moore School project involved engineers and researchers including Eckert, Mauchly and Goldstine. A report’s authorship is evidence about that document, not a complete settlement of priority for all concepts developed through discussion. The IAS library list identifies the later 28 June 1946 logical-design report as the work of Arthur Burks, Herman Goldstine and von Neumann. Physical progress reports name Bigelow, Pomerene, Slutz, Ware and others. These records show a sequence of mathematical description, engineering, coding and use, rather than one finished invention appearing on a single date. Bigelow had also coauthored the 1943 feedback paper with Rosenblueth and Wiener, a separate research collaboration. Feedback control and storing a program are related historical interests, but are not interchangeable definitions.
Original exercise: declare a toy machine completely
Our invented teaching machine has thirty-two addressable eight-bit words. For instructions, the first three bits specify an operation and the last five an address. LOAD uses 001, ADD 010, STORE 011 and HALT 111; HALT ignores its address field. There is one eight-bit accumulator, initially zero, and the program counter starts at address zero. LOAD reads an unsigned number into the accumulator; ADD adds the value at the addressed word, without overflow in this example; STORE copies the accumulator to a memory word. Execution normally proceeds to the next instruction. These choices are ours: they are not the EDVAC draft’s actual instruction set, word length or architecture.
Sources for this section: [1]
Ask what changes when a word changes
First replace address 5 with 00001001 while leaving the program unchanged: what result will be stored? Next change only the first instruction to LOAD 5 while restoring the original data. Finally ask what would happen if control tried to fetch the original data word 00000111 as an instruction. Our toy specification deliberately assigns no operation to opcode 000, so the correct response is that this fetch has no defined behaviour here. It is not permission to invent a historical EDVAC response. The exercise exposes both the flexibility of stored representation and the need for a complete machine definition.
Sources for this section: [1]
Reference answer: a stored representation still needs interpretation
Changing the second operand to nine produces sixteen, or 00010000, at address 6. Changing the first instruction to LOAD 5 gives five plus five, or ten. Fetching 00000111 as an instruction encounters the undefined opcode 000. The same eight bits may therefore be a valid unsigned number but an invalid instruction under our rules. The original program contains no jump or self-modifying step, and it is not evidence that every stored-program machine has the same controls. What the trace demonstrates is narrower and useful: a program can be stored, selected and executed as encoded material, while arithmetic, sequencing and memory each perform distinct work.
Sources for this section: [1]
Follow the record from proposal toward implementation
A successful paper trace does not measure the speed or reliability of an electronic machine. The later IAS list records separate publications on logical design, programming and physical realisation. Questions about memory technology, checking and operating experience belong with those documents and the hardware record. The value of the 1945 draft is that its early divisions make these questions visible. Reading the report as a proposal, crediting the wider team and testing a clearly labelled toy model avoids both extremes: reducing the history to an inventor’s name or treating an unfinished document as if it offered nothing that could be examined precisely.
Continue the chronology
Related history guides
Shannon’s 1948 Entropy: Calculate a Source and Build a Code
Compare a different use of binary representation, with its own assumptions and verification task.
Read the timeline1847–1938Shannon’s 1938 Relay Algebra: Read the Symbols and Simplify a Circuit
Follow how an algebraic representation becomes a model that can be checked.
Read the timeline1954–1957The Original FORTRAN Compiler
Follow a later, separate problem: translating a higher-level mathematical notation into instructions for the IBM 704.
Read the timelineBiography context
Explore United States through connected lives
Connected biographies
People behind the work

1903–1957
John von Neumann
Mathematician, scientific adviser and computing researcherJohn von Neumann worked across pure mathematics, quantum theory, economics and computation. His written designs and institutional advocacy helped develop early stored-program computers through collaboration with engineers, programmers and other researchers.Read biographyQuick answers
Common questions
- Did von Neumann build EDVAC alone?
- No. The report belonged to a larger development setting. This guide distinguishes its named author from the engineers and researchers documented in the wider project.
- Are the binary words in this guide historical machine code?
- No. They are an original eight-bit teaching specification with explicitly assigned operations and addresses.
Primary and institutional sources
How this history was checked
Read the linked original documents and institutional records alongside the separately identified teaching exercise. This article was reviewed on 27 October 2026.
- John von Neumann; Smithsonian Libraries / Internet ArchiveFirst draft of a report on the EDVAC, 30 June 1945: original Smithsonian copy
- Smithsonian LibrariesFirst draft of a report on the EDVAC: collection and edition record
- John von Neumann; Michael D. Godfrey; MIT course copyFirst draft of a report on the EDVAC: Godfrey’s corrected 1993 reset and editorial introduction
- Institute for Advanced Study Libraries and ArchivesElectronic Computer Project: dated list of reports, 1946–1957
- Institute for Advanced StudyElectronic Computer Project: people, construction and dissemination
- Arturo Rosenblueth, Norbert Wiener and Julian Bigelow; university-hosted original paperBehavior, Purpose and Teleology, Philosophy of Science 10 (1943), 18–24
