Advertisement

Research and Advances

Machine controls for analysis of variance

A major problem in using the analysis of variance, as the number of factors increases, is the exponential rise in the number of interactions. Even though the experimenter may not be interested in these interactions it is impossible to ignore them in most experimental designs because of the problem of getting error terms. It is natural therefore to look to the computer to handle the bulk of work involved in computing the interactions. A program device to get the computer to do this is described.
Research and Advances

Final examination scheduling

A method for scheduling final examinations to yield a minimal number of student conflicts is described. The “minimization” is achieved by repetitively evaluating a nonlinear set of equations. Imbedded in the process is a random or Monte Carlo selection of assignments. As in such heuristic techniques, the solution may not be optimum and many solutions may be found which yield locally minimal results. Computer programs are described and empirical results given.
Research and Advances

An alternate checksum method

To increase reliability of transmission between magnetic tape and core storage on an IBM 7090/7094, blocks or records of data are often assigned a word called a logical checksum. This is a number derived from the block by some simple algorithm and as unique to it as possible. The method most commonly used to form a checksum is to add together every datum in the block by the ACL (add and carry logical) instruction.
Research and Advances

A method for comparing the internal operating speeds of computers

First, a table of frequencies of various types of operations is prepared based on experience in similar applications or, perhaps, on actual counts if these are available. Table 1 shows such a frequency table. Next, the total weighted execution time for a given operation type is obtained by multiplying the time required for the operation by the frequency count. Finally, an “average” operation time is calculated by summing overall operation types and dividing by the sum of the frequency counts. Table 2 shows the computation for the IBM 7090. Table 3 shows a comparison of average and relative speeds for several current computers for the particular application using the IBM 7090 as a reference base.
Research and Advances

A proposal for input-output conventions in ALGOL 60

The ALGOL 60 language as first defined made no explicit reference to input and output processes. Such processes appeared to be quite dependent on the computer used, and so it was difficult to obtain agreement on those matters. As time has passed, a great many ALGOL compilers have come into use, and each compiler has incorporated some input-output facilities. Experience has shown that such facilities can be introduced in a manner which is compatible and consistent with the ALGOL language, and which (more importantly) is almost completely machine-independent. However, the existing implementations have taken many different approaches to the subject, and this has hampered the interchange of programs between installations. The ACM ALGOL committee has carefully studied the various proposals in an attempt to define a set of conventions for doing input and output which would be suitable for use on most computers. The present report constitutes the recommendations of that committee.
Research and Advances

Computer-usage accounting for generalized time-sharing systems

The current development of general time-sharing systems requires a revision of accounting procedures for computer usage. Since time-sharing system users operate concurrently, it is necessary to be more precise as to the amount of computer time and storage space that a user actually utilizes. The various cost factors which should be considered for computer usage accounting in generalized time-sharing systems are discussed.
Research and Advances

A Fortran II load-time saver

The FORTRAN II CHAIN feature on the 7090 can be used to save card-to-tape time, loading time, and to provide a convenient method for storing and transporting producting programs. The method is simply to load the desired program as a CHAIN and save the tape on which it is stored. A trivial program can then be used to recall the major program.
Research and Advances

A technique for computer detection and correction of spelling errors

The method described assumes that a word which cannot be found in a dictionary has at most one error, which might be a wrong, missing or extra letter or a single transposition. The unidentified input word is compared to the dictionary again, testing each time to see if the words match—assuming one of these errors occurred. During a test run on garbled text, correct identifications were made for over 95 percent of these error types.
Research and Advances

Computer-made perspective movies as a scientific and communication tool

It is easy to program the basic transformation required for a perspective drawing. This fact plus the advent of high speed microfilm printers such as the General Dynamics Electronics S-C 4020 makes possible perspective movies as the direct output from a computer. The programming of such a movie is briefly described for studying the angular motions of a satellite containing an attitude control system. In the movie, a domino-shaped box represents the satellite and a sphere with circles of latitude and longitude represents the earth. The cost was approximately three to eight minutes of IBM 7090 time per one minute of movie.
Research and Advances

Digital data processor for tracking the partially illuminated moon

A study of lunar tracking techniques and fabrication of a breadboard to assess the feasibility of the best technique selected was conducted to define a tracking system for observation of the sightline to the center of a partially illuminated moon. The data processing portion of the system is presented in detail and then described in general are the operation of the tracker head assembly for data readout, the operation of the entire system and the effect data processing considerations have on the design of the tracker system. The system basically consists of an optical sensor, digital computer and tracker drive mechanism. The three system units, connected in cascade, comprise the control loop. For this application, an optical telescope with a radial mechanical scanning mechanism was used that read out lunar sightline measurement information. This information is sequentially read into a special purpose digital computer that extracts the measurements and computes the error signals that drive the tracker to the appropriate attitude.
Research and Advances

Tests on a computer method for constructing school timetables

A previously proposed computer method for constructing timetables, based on an iteration involving Boolean matrices, is described. In limited tests the method has successfully produced timetables on every trial. References are given which relate the timetable problem to theorems on matrices of zeros and ones, and to theorems on bipartite graphs. Some problems of applying the method to constructing timetables in real situations are noted.
Research and Advances

Some effects of the 6600 computer on language structures

The problem of compiling efficient 6600 codes prompted the development of an intermediate language reflecting the structure of the machine, that is more easily manipulated in improving object program efficiency. The subject of this paper is the intermediate language and methods of manipulating it. Compilations of a series of arithmetic statements are discussed. It is assumed that all functions and exponentials have been removed from these statements, and replaced by simple variables. For purposes of simplicity the treatment of subscripts is ignored. A simplified 6600 structure is presented to illustrate the compiling method. Several assumptions are made for purposes of simplification, although there are cases in which the assumptions are violated in the actual machine.

Shape the Future of Computing

ACM encourages its members to take a direct hand in shaping the future of the association. There are more ways than ever to get involved.

Get Involved

Communications of the ACM (CACM) is now a fully Open Access publication.

By opening CACM to the world, we hope to increase engagement among the broader computer science community and encourage non-members to discover the rich resources ACM has to offer.

Learn More