The Preparation of Programs for an Electronic Digital Computer: With Special Reference to the EDSAC and the Use of a Library of SubroutinesThis is often considered the first book on computer programming. It was written for the EDSAC (Electronic Delay Storage Automatic Calculator) computer that began operation in 1949 as the world's first regularly operated stored program computer. The idea of a library of subroutines was developed for the EDSAC, and is described in this book. Maurice Wilkes lead the development of the EDSAC. |
Other editions - View all
Common terms and phrases
Accuracy address specified arithmetical operations auxiliary subroutine binary point blank tape C(Acc calculation carriage return checking clear accumulator closed subroutine code letter complex numbers computing control combination cycle D. R. Hartree detailed program EDSAC error example exponent F clear F order F test figure shift floating decimal form Floating point form and plant function letters initial orders integer integration interpretive subroutine K P F library subroutines line feed link order long numbers long storage location m+2 F machine master routine method msecs multiplier register negative number in storage number of digits number sequences numbers in floating plant link power series Preset parameters print routine program parameter program tape pseudo-orders punched punched tape reference order round-off short numbers space PZGK subtract switch teleprinter three-address code transfer order transfers control variable zero
Popular passages
Page 3 - E n If the number in the accumulator is greater than or equal to zero execute next the order which stands in storage location n ; otherwise proceed serially. G n...
Page 37 - ... indicate both desirable and undesirable conditions. Debugging output statements can be easily removed when the program is accepted as correct or changed to comments so that they can be used later if needed. It is usually easier to include these debugging statements when the program is being written than to wait until the program has been tried and found to fail.
Page 2 - H n Copy the number in storage location n into the multiplier register. V n Multiply the number in storage location n by the number in the multiplier register and add the product into the accumulator. N n Multiply the number in storage location n by the number in the multiplier register and subtract the product from the accumulator. T n Transfer the contents of the accumulator to storage location n and clear the accumulator. U n Transfer the contents of the accumulator to storage location n and do...
Page 3 - Read the next row of holes on the input tape and place the resulting integer, multiplied by 2~18, in storage location n. O n Print the character now set up on the teleprinter and set up on the teleprinter the character represented by the five most significant digits in storage location n. F n Place the five digits which represent the character next to be printed by the teleprinter...
Page 35 - ... LC. 3. Mark program name on the tops of the deck. 4. Mark diagonal or cross strips on the top of the deck. This practice makes identification and location easy during debugging. It will also help indicate shuffled decks. SIMPLE CODING Simple, straightforward coding is a great help when debugging. It is easier to avoid and detect errors if the program is written in an orderly and logical manner. In the early stages of writing a complicated program, do not hesitate to rewrite sections if it will...
Page 29 - II', handles a set of simultaneous first-order differential equations in which each derivative is expressed explicitly in terms of the dependent variables.
Page 30 - G1 should be placed in the upper half of the store to obtain maximum accuracy (the ideal position is 386 onwards). This is because one of the orders forms part of a constant which thus depends slightly on the location of the routine. In normal use the effect is quite negligible...
Page 160 - RI and (2) as a working position used in the evaluation of each function value fi in turn. The interpretation of these numbers in terms of the actual x Ref.