COMTRAN Reconstruction

F28-8043 · June 1960

Page 67

PDF page 73 of 124. Download the scanned PDF

The page as scanned

The scan of PDF page 73 of F28-8043
Select the scan to open it at full size.

The text read off it

[page 67]

and Column 6 is left blank. This makes it possible to insert correction cards later if necessary. The blank is the first character in the collating sequence and will therefore be placed in sequence before any other character in the same column. Thus, if the numbers 23 and 24 have been punched in Columns 4 and 5, each will be read as a three-digit number with a blank in the third position, and a correction card with the number 235 would be collated between them.

When the cards are read into the data processing system, their serial numbers will be checked for correctness of sequence. In all IBM machines the numeric collating sequence is, first, the blank, then the numerals from 0 to 9. Alphabetic characters, if any, will be checked for sequence in accordance with the collating sequence of the particular machine system.

Data Name (Col. 7-22)

Columns 7 through 22 are reserved for any name which the programmer may have assigned to the data described in the card. The rules for forming names (see page 15) state that a name may contain as many as 30 characters. The card format provides only 16 columns, however, so that any name having more than 16 characters must be carried over to the "Data Name" columns in a succeeding line. In order for the processor to recognize this situation, the programmer must place a character in the continuation indication column (Column 72). Any non-blank character will serve the purpose. The processor will then be able to combine the two parts of the name into a single name. The programmer need not worry about the point at which the break between lines occurs; the processor will close up any blanks occurring in the "Data Name" columns. This provision allows the programmer to indent the carryover if he wishes.

Names are usually written with an assumed left margin immediately to the left of Column 7. They may be indented from this assumed margin if the programmer wishes, but the processor will ignore any indentation. If no name is assigned, Columns 7 through 22 should be left blank.

Names may be assigned to any item of data, or to any group of data items stored consecutively within the system. Thus, names may be given not only to groups of items in the input files, but also to groups formed within storage as a result of operations performed by the system. Any name so assigned may be used as an operand in a procedure statement.

All data-names used in the program must be defined in the data description. In actual operation, the system will convert these names to actual machine addresses when the object program is assembled and will use those addresses as the actual means of locating the data. The purpose of writing the names in the data description is to furnish the processor with the information it needs to do this.

Data-names must not overlap. Each field within a record can be given a name, and any group of consecutive fields can also be given a name. Thus, a single field may be operated on individually by reference to its name, or collectively as part of a group called by the group name. However, the same field may not be included as a part of each of two overlapping named groups of fields.

For example, if three successive fields are named A, B, and C, the group name X might be assigned to the pair A and B. If this were done, the name Y could not be assigned to the pair B and C, since field B is already part of a named group of fields. If the programmer needs to be able to refer to fields B and C by a single name, however, he can rename the entire group of three fields, using the REDEF type code described later in this chapter. This procedure would not delete the original names; the new names and the names originally assigned would all be available for use thereafter.

Level (Col. 23-24)